<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:nx="http://www.quanexbuildingproducts.com/20220131"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  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="nx-20220131.xsd" xlink:type="simple"/>
    <context id="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i7e2a30c2cfba4e549f58562b14b9c359_I20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </period>
    </context>
    <context id="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="idd920b44cdb94dea98f02764a51db7e7_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="if50b22002792464ebb830186cc444d7d_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="i5a8691053c694a74a1498bbb25420ef2_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="i6075fbfdab194d8382d68fd9423e6867_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</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="ia0ecafe2895b4d3580b8dc7e8f2e19fd_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</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="i4589137368bb4d5da5f2a8a2bb77dedc_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</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="ia69ccc590e094a119c79cde033177e98_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</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="i03219c6351e54e71a85530335fb87cb5_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i3c4e9b22d81b41fdac258fd05e0c56ef_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i5705b57a75944d46bd60989598935438_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ib0ce55cdf06d43159beeff78de1643b5_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i6305a059ee144ff3bd1b9101aaf848c2_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i2939723edd7d400e82ac0dd1927306cd_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i90750c53a2c74752b93c618bbfa8a366_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i426a76d2757549a79ff6c797e19c2f06_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="ib6f0e19faa37471da0c639bdf6276f95_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="ibe6c2d1810b54751a34ae44854b7f1ab_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i726c06b8e1524432bc9bfe3feb182fbd_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="iffe3a00b39a447dc8400b24dbf36575a_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="ia574d506a6ac4ea9bcf3fbb978fd2a18_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="i055ec66b97224d50bd32dc61979196cb_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="ia2d8a22a70344a35b2b7d35f89fa1f5d_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="i7f370de091a442b9800d1ea3f74f7134_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="if3e7ecb40f494db1bb799751711388aa_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i119268474e0548cdbef89499707d54a2_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i70eaf214db424884927dfe6e45bfab6b_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i820c132aff584fb5b95b5cf819e821c3_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="i8e109577233444bca2801ae25c75b39e_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="i3d784bfe33054adb9ca4fe6fee8a6391_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="i8a4f4f8986b64808bc4ecf23594f2a68_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="if26c75b5bffb4269ba2556776ed7de26_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="ife899e264069477096bb31185fb82355_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ic5213f3939b542778a06df70bd1dff92_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i86bd490c2a9d4562acc929a23510d1f9_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i32d5ee3fabf045198481581809b3cdf2_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i9898e669cd2b4d7683550201c83839c0_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i45a99e1445264520a81a2e87e8427681_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i946c85a7f14a402f82d753f5630c6b03_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ia956e473cc0d4594baf9d93730d6f9d9_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i24e4d3d4105f4e538444c975369ae5e7_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i7608adbc25084f2eb832778650465444_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i95c8d23b41a64e7b82eaea007c388af5_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i2b2d680d011342cc9683354606133e46_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i59b0162d5fc5491691ea160105361f31_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i1e446722e5384ea1a6885bd573a2d77c_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:FenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i0ee3c081b0bd47d39ab5793fc4d5f3f3_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i73f4b7dfe4ff4e73b43223f1ed387cae_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="ide1ef3198848409f813b5cdaf8f0fce3_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ib1c4c14042fe407d86d556a8bac998ce_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">nx:NonfenestrationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">nx:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i74a095817f08478dbdc97b41df991ade_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="ic6d55f89ce194588b2ffca0b9404c54b_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">nx:NoSingleTransactionOrSeriesOfRelatedTransactionsExceeded120000Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ieb03123b29b6449cbdd0a93fbcc9ad7a_D20200831-20200831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <startDate>2020-08-31</startDate>
            <endDate>2020-08-31</endDate>
        </period>
    </context>
    <context id="i502554b3cd864af7bf7d59eccf435fa3_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i5776c46f54314b2ba5101330dcaef67b_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="iaa9c08e8d87147109db335c4d1f9a62a_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">nx:TradenamesAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i0306a2ffb6e54e9a8b6f1e6e97e6f64a_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">nx:TradenamesAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i999818e6b2ce4fcb919f7793ab403083_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">nx:PatentsAndOtherTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i93a29bf736cf4e1a929306ea3d8065b3_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">nx:PatentsAndOtherTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="ica5ebf179fa1421d9aa6076deb79817e_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="icbeae0e2e7fc49c8b62780fdcdc273f2_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i8149a3b735724ad7ac5c7db845d4a4b0_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">nx:CapitalLeaseObligationsAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="ia06a2d2eb44b46d8a596c26f8b396465_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">nx:CapitalLeaseObligationsAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i9773a59bf7c941689f616b682e39ee27_I20181018">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-10-18</instant>
        </period>
    </context>
    <context id="ica152801f86f42fa8fc68b385ab809aa_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:LessThanOneandOneHalfLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ib508842699d94612be42696b196ad030_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:LessThanOneandOneHalfLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i2e41e0e8a1f644828abae475e93b489a_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:TransitionedRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:LessThanOneandOneHalfLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i1cf5a11d610b4315ba0315bd9c971ce3_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:EurocurrencyRateLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:LessThanOneandOneHalfLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="icf4db118e07a460da1efce29be336691_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:InitialRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:LessThanOneandOneHalfLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i1e9bd40967064026a4961fd940324424_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:LessThanOneandOneHalfLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ia7ab9a1aae7347378d61437a3a558551_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenOneandOneHalfandTwoandOneQuarterLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i0711b3d8e19249159220989ae13c0fa5_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:TransitionedRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenOneandOneHalfandTwoandOneQuarterLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i4220fbceb84f467d9b8254651fb0322b_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:EurocurrencyRateLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenOneandOneHalfandTwoandOneQuarterLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i6dad9804ab894775b9abf0536ef24b2e_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenOneandOneHalfandTwoandOneQuarterLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i6e279784cbcf4cccab278fc6439bc61b_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:InitialRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenOneandOneHalfandTwoandOneQuarterLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i1036bd95154643d49da231ae500406d9_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenOneandOneHalfandTwoandOneQuarterLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i2ad3e61af521408e8ecb3ac67ee9d9b5_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenTwoandOneQuarterandThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i14eedd04928d4a0e8ea0f7b2402d76e6_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenTwoandOneQuarterandThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i13bc10c765dc43358894975587d4d99f_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:TransitionedRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenTwoandOneQuarterandThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i17bd10fcad18424eb0bca5c1aed58b28_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:EurocurrencyRateLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenTwoandOneQuarterandThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ia8e3dc7f18dc409f9bd1667531d9ecd0_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:InitialRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenTwoandOneQuarterandThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i985711a691b34055854eca8082d1e2e0_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:BetweenTwoandOneQuarterandThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i82915bb832694fc4b09a53500259dc66_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:GreaterThanThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i94a3ef3544244a97a8b83c719997f199_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:EurocurrencyRateLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:GreaterThanThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i3c036136b071431dbc38632e2a2ae45a_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:GreaterThanThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i1d2c07ddce774ff781e56392040cae39_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:TransitionedRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:GreaterThanThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i0ef80d639dff45b481257add5be3ba3b_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">nx:InitialRFRLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:GreaterThanThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i73131ace766e489c9cbaff93da9d31b6_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:InterestRateScenarioAxis">nx:GreaterThanThreeLeverageRatioMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i0d6e968bd8604a6ba4b6579a44a9d295_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:A2018CreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i6aa7bf5b4a1245e187820332ffc1f81b_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">nx:SwingLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i67f1adab85c048e39a95d2d620d6af77_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">nx:TermLoanFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="ie484ac799c1c46c3a132aef689a2e1b2_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i8c61391740404f08bb8539728127989d_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i630aa7293844417cacf6960da7dc963c_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="ic3f6b08ebc034955b69013d8a3f940b8_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i9b48870c196f45ec8f83dc6c054b0c26_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i9c6d34a6143742948247cef2f3806410_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i8a29a85d4f3f46c8a5088301cdd771d8_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ic93fb73cd47a4d29a553b79d9c0ae25c_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i7d6649ac51f34638afc3ce4638ef8f74_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="iaa872e5b4774460fbc793bbefcd460c7_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i09a556581b4a42f39d3a74c5e12e61c7_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ieb7ff9146e754801a3094f6d4dd91fa5_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i7ffd4cbd2c9d40d2a342eb2bcc1d1857_D20191205-20191205">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-05</startDate>
            <endDate>2019-12-05</endDate>
        </period>
    </context>
    <context id="i5c98f7ca45c7442783c6d762cc38f801_D20201202-20201202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-02</startDate>
            <endDate>2020-12-02</endDate>
        </period>
    </context>
    <context id="i3247060fa42844a0bec80e8018f5ff9f_D20211209-20211209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-09</startDate>
            <endDate>2021-12-09</endDate>
        </period>
    </context>
    <context id="i2fad3ce3463c40a8ad8eb5eefa159c12_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i49167b96e89246019f5c30b8595b6426_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i41f2bf01880644ab817456f07725d82d_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="if26a573569984c568340fa0a80864de4_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:ShareBasedCompensationAwardPerformanceCriteriaAxis">nx:ShareBasedCompensationAwardPerformanceCriteriaAbsoluteTotalShareholderReturnMilestonesGreaterThanOrEqualTo50PercentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ib66c4257816c4112b35d2a367a76c7c1_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:ShareBasedCompensationAwardPerformanceCriteriaAxis">nx:ShareBasedCompensationAwardPerformanceCriteriaAbsoluteTotalShareholderReturnMilestonesLessThan50PercentAndGreaterThanOrEqualTo20PercentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i5ae873dd3ee141a58da0bf3d523f638f_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:ShareBasedCompensationAwardPerformanceCriteriaAxis">nx:ShareBasedCompensationAwardPerformanceCriteriaAbsoluteTotalShareholderReturnMilestonesLessThan20PercentAndGreaterThanOrEqualToNegative20PercentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="ifb16fd4d065d427a9a37fbc49eceba3a_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">nx:ShareBasedCompensationAwardTrancheFourMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="nx:ShareBasedCompensationAwardPerformanceCriteriaAxis">nx:ShareBasedCompensationAwardPerformanceCriteriaAbsoluteTotalShareholderReturnMilestonesLessThanNegative20PercentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i09d6aeee4b3846ba8b74076dbba6cfa8_D20191205-20191205">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-05</startDate>
            <endDate>2019-12-05</endDate>
        </period>
    </context>
    <context id="i1d82c50dc4d6476eae0c78e54f73f9df_D20201202-20201202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-02</startDate>
            <endDate>2020-12-02</endDate>
        </period>
    </context>
    <context id="i635bb18a83624aaba16e9051622b3c67_D20211209-20211209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-09</startDate>
            <endDate>2021-12-09</endDate>
        </period>
    </context>
    <context id="i4760f2e404194560996b1e931348f996_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i9b7d101d7f9f44d3b51ca3c111058039_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="id5fe2c3b26cc41cdb45c6d99fbe2c455_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">nx:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i7d3a92b483e74a47ad95945d3355d536_D20211101-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAEngineeredComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i13d05a0cbc9e40a3b0502a677725004e_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="ib2ece010168147a48c366222753b44aa_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="id1b6cbc3c3024cab8a35b9e1d6f74431_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="if1063d9496274587901ec694e10f232a_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i770e2fd7f300440ebb481b0a11814540_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NAFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="idf23452914e7442290d1ba3dcc351e24_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:EUFenestrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="iebd4034363d54b63a69b79a956414d56_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">nx:NACabinetComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="icd5764fd46644f58ac1b7563337c33b9_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001423221</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="segment">
        <measure>nx:segment</measure>
    </unit>
    <unit id="reporting_unit">
        <measure>nx:reporting_unit</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180L2ZyYWc6NjQ5NjdjZjBjNzMxNGM5ZDkzMmFiMDY2YzcxZDIwYzEvdGFibGU6Y2YyODY1NjQwZjc5NGYxY2IzYTNjMGNiZjJmZTczODQvdGFibGVyYW5nZTpjZjI4NjU2NDBmNzk0ZjFjYjNhM2MwY2JmMmZlNzM4NF8zLTEtMS0xLTMwMjI3_b16da681-3a52-46f9-b6a5-fb0af4cb7149">0001423221</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180L2ZyYWc6NjQ5NjdjZjBjNzMxNGM5ZDkzMmFiMDY2YzcxZDIwYzEvdGFibGU6Y2YyODY1NjQwZjc5NGYxY2IzYTNjMGNiZjJmZTczODQvdGFibGVyYW5nZTpjZjI4NjU2NDBmNzk0ZjFjYjNhM2MwY2JmMmZlNzM4NF80LTEtMS0xLTMwMjI3_0e4761e9-6da5-45c5-b0f8-26e235c38d79">--10-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180L2ZyYWc6NjQ5NjdjZjBjNzMxNGM5ZDkzMmFiMDY2YzcxZDIwYzEvdGFibGU6Y2YyODY1NjQwZjc5NGYxY2IzYTNjMGNiZjJmZTczODQvdGFibGVyYW5nZTpjZjI4NjU2NDBmNzk0ZjFjYjNhM2MwY2JmMmZlNzM4NF84LTEtMS0xLTMwMjI3_066ceef6-6aa4-49e0-b67a-83ca523a87cd">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180L2ZyYWc6NjQ5NjdjZjBjNzMxNGM5ZDkzMmFiMDY2YzcxZDIwYzEvdGFibGU6Y2YyODY1NjQwZjc5NGYxY2IzYTNjMGNiZjJmZTczODQvdGFibGVyYW5nZTpjZjI4NjU2NDBmNzk0ZjFjYjNhM2MwY2JmMmZlNzM4NF85LTEtMS0xLTMwMjI3_90af14b4-de73-4e67-83f5-f8cf09e353ab">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180L2ZyYWc6NjQ5NjdjZjBjNzMxNGM5ZDkzMmFiMDY2YzcxZDIwYzEvdGFibGU6Y2YyODY1NjQwZjc5NGYxY2IzYTNjMGNiZjJmZTczODQvdGFibGVyYW5nZTpjZjI4NjU2NDBmNzk0ZjFjYjNhM2MwY2JmMmZlNzM4NF8xMC0xLTEtMS0zMDIyNw_61e012e6-0899-4567-b29b-08069e880809">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTAz_9ad73d85-7969-4c0b-be27-5e5f112a8ae2">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YzBlNzMzMzlkODA5NDc5OGI2NmU1NzZmZjg4MDhkZWQvdGFibGVyYW5nZTpjMGU3MzMzOWQ4MDk0Nzk4YjY2ZTU3NmZmODgwOGRlZF8wLTAtMS0xLTMwMjI3_95e5f646-eec1-45de-92ca-f287b7ca3a69">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMzU_3a89d2d5-6ffd-4598-9b99-e5566b9ad227">2022-01-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6ZTdlYmRlYThmMTEyNGM2Mjg3ZDgwYThjN2Q0YjFkZWUvdGFibGVyYW5nZTplN2ViZGVhOGYxMTI0YzYyODdkODBhOGM3ZDRiMWRlZV8wLTAtMS0xLTMwMjI3_807f3405-4359-4a02-94e7-480faf3f94f4">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTA0_a4193856-3e21-4fc9-9506-bc58b38eebc0">1-33913</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTA4_cbb57b3c-0d97-4206-8e9a-516440612f96">QUANEX BUILDING PRODUCTS CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6MTIwNDJmMDM2MmI3NDFlMmFmMzhmYmIyZTg2ZmU4MDcvdGFibGVyYW5nZToxMjA0MmYwMzYyYjc0MWUyYWYzOGZiYjJlODZmZTgwN18wLTAtMS0xLTMwMjI3_7ca4317a-dab6-4811-9b23-f3bdd6446ff0">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6MTIwNDJmMDM2MmI3NDFlMmFmMzhmYmIyZTg2ZmU4MDcvdGFibGVyYW5nZToxMjA0MmYwMzYyYjc0MWUyYWYzOGZiYjJlODZmZTgwN18wLTItMS0xLTMwMjI3_5b9ff25c-96a4-4272-8018-bb2f595969b3">26-1561397</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTAw_02747e66-95ec-4704-8acb-0e596b31aef7">1800 West Loop South</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTEz_b5646ef0-5c73-4bab-99e9-16e5b651b827">Suite 1500</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTAx_1a5b8817-1487-4729-9547-29010a65a46e">Houston</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTA5_d6f4e2c6-0ba9-44eb-a951-6c1527b0b115">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTEw_98fde953-5625-4763-b096-af79daeeda90">77027</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTA1_6ca503e4-b859-4966-9506-58a1b0be3741">713</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTEx_0c4a7f71-254d-4fc8-97ea-5ecef2f030de">961-4600</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YjI5YmEwOTU5NzI2NDFmYWJlOTgyNzQ0MDUwZmEyNjIvdGFibGVyYW5nZTpiMjliYTA5NTk3MjY0MWZhYmU5ODI3NDQwNTBmYTI2Ml8xLTAtMS0xLTMwMjI3_3008188c-a216-402f-b00e-fecfc0c0f853">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YjI5YmEwOTU5NzI2NDFmYWJlOTgyNzQ0MDUwZmEyNjIvdGFibGVyYW5nZTpiMjliYTA5NTk3MjY0MWZhYmU5ODI3NDQwNTBmYTI2Ml8xLTItMS0xLTMwMjI3_ea631bc8-1937-447c-9549-230ea6e2f656">NX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YjI5YmEwOTU5NzI2NDFmYWJlOTgyNzQ0MDUwZmEyNjIvdGFibGVyYW5nZTpiMjliYTA5NTk3MjY0MWZhYmU5ODI3NDQwNTBmYTI2Ml8xLTQtMS0xLTMwMjI3_9e2f0ce2-bbd5-4715-83ad-9d34eaf0b4ac">NYSE</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTA2_55e3cb03-04c5-44cf-9167-1b8eca1d6da7">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTEy_8d12002a-cc23-493e-97d4-e30cde76b65d">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YjNlODIyOTMxYmZjNDRlM2FkYmYxN2U2NDE2MzA5ZTcvdGFibGVyYW5nZTpiM2U4MjI5MzFiZmM0NGUzYWRiZjE3ZTY0MTYzMDllN18wLTAtMS0xLTMwMjI3_0b54b847-d890-485b-a66a-bfa98569b896">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YjNlODIyOTMxYmZjNDRlM2FkYmYxN2U2NDE2MzA5ZTcvdGFibGVyYW5nZTpiM2U4MjI5MzFiZmM0NGUzYWRiZjE3ZTY0MTYzMDllN18xLTYtMS0xLTMwMjI3_6340fb66-1a3d-42e8-a9c3-29642b7bc65b">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGFibGU6YjNlODIyOTMxYmZjNDRlM2FkYmYxN2U2NDE2MzA5ZTcvdGFibGVyYW5nZTpiM2U4MjI5MzFiZmM0NGUzYWRiZjE3ZTY0MTYzMDllN18yLTYtMS0xLTMwMjI3_2852bc37-6082-48d6-8220-ad18281d5a4d">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMTA3_bb1d3a29-b59f-4509-aa69-e39db771f0d0">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i7e2a30c2cfba4e549f58562b14b9c359_I20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xL2ZyYWc6OTdhMWJlNWIxYzJiNDg5MjgwZDY1ZGY0YmZmMDEyN2MvdGV4dHJlZ2lvbjo5N2ExYmU1YjFjMmI0ODkyODBkNjVkZjRiZmYwMTI3Y18yMDk2_3b28f64a-6321-4ee6-a81c-479c1bb518db"
      unitRef="shares">33387400</dei:EntityCommonStockSharesOutstanding>
    <dei:EntityRegistrantName
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RleHRyZWdpb246Nzk3ZjY5ZDg3OWRlNDAyM2ExZGY3NjMzNjFmN2VkYzlfNw_77ea3988-5523-4031-81ac-f71177491d70">QUANEX BUILDING PRODUCTS CORPORATION</dei:EntityRegistrantName>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNC0xLTEtMS0zMDIyNw_233286ef-505c-4b13-a26d-b91442f97406"
      unitRef="usd">31719000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNC0zLTEtMS0zMDIyNw_0a555a11-aa51-49c9-8863-be2e3849eb0e"
      unitRef="usd">40061000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNS0wLTEtMS0zMDIyNy90ZXh0cmVnaW9uOmVmN2RlMDgwNDdhYjQ4MjNhMjcwZTZmMWRmZmM1M2IzXzYz_094a20eb-558b-4cf6-8eea-ba8d3b1fa1fb"
      unitRef="usd">521000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNS0wLTEtMS0zMDIyNy90ZXh0cmVnaW9uOmVmN2RlMDgwNDdhYjQ4MjNhMjcwZTZmMWRmZmM1M2IzXzcw_0eb1965f-a46c-4f8c-9774-75616121ff53"
      unitRef="usd">340000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNS0xLTEtMS0zMDIyNw_bf78f164-633d-406b-bc17-920c53caccb6"
      unitRef="usd">99355000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNS0zLTEtMS0zMDIyNw_b72c78af-b9b2-42d9-894d-0cfa92d27b05"
      unitRef="usd">108309000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNi0xLTEtMS0zMDIyNw_c5e023da-88e8-4246-9e7e-5d0c4e8cacd0"
      unitRef="usd">117384000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNi0zLTEtMS0zMDIyNw_00067c6c-c01e-4469-86b3-5d0b802eb9b1"
      unitRef="usd">92529000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfOC0xLTEtMS0zMDIyNw_ab619409-0337-460c-acdb-6d7a80c56b7a"
      unitRef="usd">11621000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfOC0zLTEtMS0zMDIyNw_0cc8ddc9-f4dc-4085-b4f9-334d5aa99d42"
      unitRef="usd">8148000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTAtMS0xLTEtMzAyMjc_49cdb63c-f592-4719-a19b-4da1a85de5f2"
      unitRef="usd">260079000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTAtMy0xLTEtMzAyMjc_fa3b014a-eef0-4496-b6e6-a56dc87a12d8"
      unitRef="usd">249047000</us-gaap:AssetsCurrent>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTEtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo0YjAyZjA5YmRhMzU0NzE2YjlkNThjMDRhYjkxNjU1M183MA_76308d82-ef16-4c97-bc59-2a0774becd07"
      unitRef="usd">340120000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTEtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo0YjAyZjA5YmRhMzU0NzE2YjlkNThjMDRhYjkxNjU1M183Nw_5e5f658b-7447-441b-9c57-6971b681b921"
      unitRef="usd">336493000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTEtMS0xLTEtMzAyMjc_fc8f0371-bc68-42b5-8abd-3073b2cd0ea9"
      unitRef="usd">175294000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTEtMy0xLTEtMzAyMjc_ad76fb07-ac72-4016-9840-b0e0e4c07e56"
      unitRef="usd">178630000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTItMS0xLTEtMzAyMjc_5d6c366f-99a9-4322-88a4-1ed59cebb960"
      unitRef="usd">50700000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTItMy0xLTEtMzAyMjc_8041ef39-9fa2-4e90-8849-c004f2be3fcf"
      unitRef="usd">52708000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTMtMS0xLTEtMzAyMjc_7c860d31-b28d-40bb-99a2-09916fc67fb6"
      unitRef="usd">147793000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTMtMy0xLTEtMzAyMjc_9dc3ff3d-9aa2-419e-9196-669a6d772115"
      unitRef="usd">149205000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTQtMS0xLTEtMzAyMjc_e3d5f20c-3ccf-4546-849e-db58e8c30a80"
      unitRef="usd">78750000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTQtMy0xLTEtMzAyMjc_90a0d2cd-83d0-427d-a9c9-569324cf244e"
      unitRef="usd">82410000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTUtMS0xLTEtMzAyMjc_70004e5d-1099-49ce-b9f4-7e738c890683"
      unitRef="usd">5656000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTUtMy0xLTEtMzAyMjc_8dcbf7a6-2eca-4ff7-9be7-3fb915f1f663"
      unitRef="usd">5323000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTctMS0xLTEtMzAyMjc_42c34f44-ac52-4a17-acea-3c882a04b464"
      unitRef="usd">718272000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMTctMy0xLTEtMzAyMjc_08bca955-cf97-4dd9-b659-bf3ffab43806"
      unitRef="usd">717323000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjAtMS0xLTEtMzAyMjc_18af4324-1abc-45f5-80b6-5885ea3f4eb2"
      unitRef="usd">75457000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjAtMy0xLTEtMzAyMjc_32f384b4-db39-468a-b598-bead5018b5b1"
      unitRef="usd">86765000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjEtMS0xLTEtMzAyMjc_2051f9dc-97eb-4b86-82f1-eb704e267373"
      unitRef="usd">39564000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjEtMy0xLTEtMzAyMjc_81d9084a-1239-4075-b150-f4f781caba4c"
      unitRef="usd">56156000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjItMS0xLTEtMzAyMjc_8c3b5d31-6493-4510-9356-4c0a6764f419"
      unitRef="usd">7473000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjItMy0xLTEtMzAyMjc_42a8a628-caea-48d2-86fd-c8497f61541f"
      unitRef="usd">6038000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjMtMS0xLTEtMzAyMjc_7019da5f-dcb1-4399-bc70-51e270316586"
      unitRef="usd">836000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjMtMy0xLTEtMzAyMjc_b457289c-6a92-40fe-a71c-a007a8966dd1"
      unitRef="usd">846000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjQtMS0xLTEtMzAyMjc_e8950868-d190-4c83-800b-9657357c6c03"
      unitRef="usd">8298000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjQtMy0xLTEtMzAyMjc_e9130432-ebbc-4732-ac30-0bc1c907da06"
      unitRef="usd">8196000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjUtMS0xLTEtMzAyMjc_b1c7a499-0289-4db6-b598-617244383f9c"
      unitRef="usd">131628000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjUtMy0xLTEtMzAyMjc_413d866e-a98e-4639-8aa3-4efc4175684f"
      unitRef="usd">158001000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjYtMS0xLTEtMzAyMjc_7bccf978-ed5a-4b54-8e31-baee5ccee8db"
      unitRef="usd">76691000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjYtMy0xLTEtMzAyMjc_5bb70b56-c7f2-43eb-8cef-46e86316f900"
      unitRef="usd">52094000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjctMS0xLTEtMzAyMjc_7d9155e2-3231-496d-931d-016696eb4dc2"
      unitRef="usd">43415000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjctMy0xLTEtMzAyMjc_98118d6e-2dfe-4be0-90e2-aeedc23e8c5e"
      unitRef="usd">45367000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjgtMS0xLTEtMzAyMjc_82cc34cf-0ed7-413b-8f9c-aa329141e7cb"
      unitRef="usd">4658000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjgtMy0xLTEtMzAyMjc_54e2bcf9-4a7f-48e9-9809-b7d2313827ef"
      unitRef="usd">4737000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjktMS0xLTEtMzAyMjc_57f97b61-a8a7-4516-8279-f75db80c7134"
      unitRef="usd">22597000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMjktMy0xLTEtMzAyMjc_3ad02c55-461d-48cb-82c6-ee6f90b724c9"
      unitRef="usd">21965000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzEtMS0xLTEtMzAyMjc_8779a33e-fd67-43c2-91ad-d2ce1ec38783"
      unitRef="usd">14784000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzEtMy0xLTEtMzAyMjc_06fa5053-cff1-4a4c-b3b0-915e606b69c9"
      unitRef="usd">15377000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzMtMS0xLTEtMzAyMjc_7672582c-cabc-41f9-a2b2-d15cd8f418e5"
      unitRef="usd">293773000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzMtMy0xLTEtMzAyMjc_44fb5c7b-9ccd-409a-9086-48b3fbdece46"
      unitRef="usd">297541000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzQtMS0xLTEtMzAyMjc_5f3cad58-1ae8-429f-91e4-4086f4fe0408"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzQtMy0xLTEtMzAyMjc_94a5c411-494f-480c-ba02-704dae6ef23f"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockNoParValue
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF8yMQ_8f26bb45-2957-44d9-8c5b-08b4eda130d6"
      unitRef="usdPerShare">0</us-gaap:PreferredStockNoParValue>
    <us-gaap:PreferredStockNoParValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF8yMQ_92c714ef-200a-4ce3-830a-70303b5e3f1e"
      unitRef="usdPerShare">0</us-gaap:PreferredStockNoParValue>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF81Mw_24acfe6b-cb90-466b-9a86-238c8877359d"
      unitRef="shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF81Mw_87349d26-4885-4aff-bafa-7c4fe1c07a6a"
      unitRef="shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF84Mg_04b61e34-e5fb-464c-8c7c-c472567e0d8b"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF84Mg_520c3e1b-d008-4343-8ca6-96b6bc8eb983"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF84Mg_de8dedf8-908b-4420-a3a5-e2c647966e1c"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjo2YmVhOGRjNjdmNGE0ZDlmODNmMmFiNzdlNDE1ZmY3NF84Mg_fc4743d8-0b84-4445-b60b-1641dd2cab87"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMS0xLTEtMzAyMjc_b16df6fa-9176-425c-a425-741a8c1ed351"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzYtMy0xLTEtMzAyMjc_c5733333-3068-4a66-91cc-a117e8e666d1"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl8xOA_9cc4d101-fdfe-4be4-9c93-d056a96d2cf2"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl8xOA_c0c47bbd-7c89-4ddb-b2fa-cbd2ced0d895"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl81MA_74c25950-87c9-4ad3-a911-76671bbf9249"
      unitRef="shares">125000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl81MA_d9e93128-4994-4b6f-ac2e-276184568cf3"
      unitRef="shares">125000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl82MQ_11b75a13-6749-42e5-ae3b-05e860b7ee5f"
      unitRef="shares">37212391</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl82OA_66f6a034-f2b2-430b-999b-c5e3ce7d9bdf"
      unitRef="shares">37273510</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl85OA_369f1ac3-a84d-4afa-bdfd-3e2cdd4feea8"
      unitRef="shares">33388735</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjplODA0ZjUwMjQwOWI0MDQ5ODFmZTIwODBkYmZkNzlkMl8xMDU_b92d31ed-4573-42fa-9cf7-f1077bf73a84"
      unitRef="shares">33274785</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMS0xLTEtMzAyMjc_9e94b164-0cd5-4b91-9e0f-3364950419b9"
      unitRef="usd">373000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzctMy0xLTEtMzAyMjc_6e43d7a7-b2af-482a-a73b-c2ff01fd70da"
      unitRef="usd">373000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzgtMS0xLTEtMzAyMjc_adcd3d5c-44f2-41b3-9ff4-8258392eaccd"
      unitRef="usd">250204000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzgtMy0xLTEtMzAyMjc_cccad0a6-560b-497b-a4bf-1ee92949ab8b"
      unitRef="usd">254162000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzktMS0xLTEtMzAyMjc_1fdaa6ac-6f6b-4221-ad91-1e7e2d180329"
      unitRef="usd">268370000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfMzktMy0xLTEtMzAyMjc_d5f4be84-5109-4381-9558-c8de913f302f"
      unitRef="usd">259718000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDAtMS0xLTEtMzAyMjc_3a38c14c-03f6-4616-bf78-0685b822ffc7"
      unitRef="usd">-24929000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDAtMy0xLTEtMzAyMjc_90b16e9e-ab04-49c2-81ef-4e82bb81e005"
      unitRef="usd">-21770000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:TreasuryStockShares
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDEtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjoyZmFkZTEwNTI1YzI0Y2RhOGYwZWQ4ODUzZDE5Zjk1Yl8zNA_f390c42f-cd1f-40a3-a267-0abe98704fee"
      unitRef="shares">3823656</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDEtMC0xLTEtMzAyMjcvdGV4dHJlZ2lvbjoyZmFkZTEwNTI1YzI0Y2RhOGYwZWQ4ODUzZDE5Zjk1Yl80MQ_12170d36-cfa1-458c-9f74-ac44f698711a"
      unitRef="shares">3998725</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDEtMS0xLTEtMzAyMjc_29e2dd4f-5d7b-4315-b5b8-c755f9a5d139"
      unitRef="usd">69519000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDEtMy0xLTEtMzAyMjc_4fe4af98-0879-47b8-9eff-204ae8cfa0df"
      unitRef="usd">72701000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDItMS0xLTEtMzAyMjc_1c5c191b-885e-42af-8bcd-daf31e0854a3"
      unitRef="usd">424499000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDItMy0xLTEtMzAyMjc_6a8c35b1-5656-4bcc-ba67-1f62d56c9545"
      unitRef="usd">419782000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDMtMS0xLTEtMzAyMjc_df306675-754a-4bf6-8d11-41733268830f"
      unitRef="usd">718272000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xNi9mcmFnOjc5N2Y2OWQ4NzlkZTQwMjNhMWRmNzYzMzYxZjdlZGM5L3RhYmxlOmRhNTEwMmMyYmE3ZjRhMDdhODQ0ODZlZDliMjUwYjFlL3RhYmxlcmFuZ2U6ZGE1MTAyYzJiYTdmNGEwN2E4NDQ4NmVkOWIyNTBiMWVfNDMtMy0xLTEtMzAyMjc_5504d247-d8ed-48e9-84b6-aabb8e887c27"
      unitRef="usd">717323000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfNC01LTEtMS0zMDIyNw_4e5b50a8-b631-44cd-9635-090ee0df4dc7"
      unitRef="usd">267040000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfNC03LTEtMS0zMDIyNw_3e56141c-db56-4f30-a8b2-3fd9ba42600f"
      unitRef="usd">230147000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfNi01LTEtMS0zMDIyNw_22cc06a8-9f0e-4e53-8e9b-5825e562a153"
      unitRef="usd">211834000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfNi03LTEtMS0zMDIyNw_d38812fa-7d9b-4fbe-ae45-8255049fdace"
      unitRef="usd">176397000</us-gaap:CostOfRevenue>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfNy01LTEtMS0zMDIyNw_9d2ffcc7-a613-4ae3-a694-5ef27ccea0d1"
      unitRef="usd">30823000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfNy03LTEtMS0zMDIyNw_c2933e44-b7be-4ce1-a5c9-ab73243ceeff"
      unitRef="usd">30861000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:RestructuringCharges
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfOC01LTEtMS0zMDIyNw_8a56bab6-b27c-4f99-ab2a-3c66185eb266"
      unitRef="usd">0</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfOC03LTEtMS0zMDIyNw_c3862c4d-c32e-4515-828b-e47a7c99961b"
      unitRef="usd">39000</us-gaap:RestructuringCharges>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfOS01LTEtMS0zMDIyNw_ae03ce4d-48dc-4ff1-800e-b10aa38d66de"
      unitRef="usd">10257000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfOS03LTEtMS0zMDIyNw_6a1f9b31-fc5e-4400-9303-167ee11d415e"
      unitRef="usd">11015000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTEtNS0xLTEtMzAyMjc_216c2eba-508a-4db9-8e64-35d98cf90cbb"
      unitRef="usd">14126000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTEtNS0xLTEtMzAyMjc_7f2b95e6-0818-4dad-9e1a-ec33b87be082"
      unitRef="usd">14126000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTEtNy0xLTEtMzAyMjc_ec0dd342-05ab-4c38-beb4-da21e9f8071b"
      unitRef="usd">11835000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTEtNy0xLTEtMzAyMjc_f8cd4361-abff-4e15-90ab-a51a54c4ce0f"
      unitRef="usd">11835000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTMtNS0xLTEtMzAyMjc_b0e3ed12-abac-473e-90f4-2621b13949e8"
      unitRef="usd">523000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTMtNy0xLTEtMzAyMjc_88c1085d-85aa-42cf-82e1-9c8a9bd4da8a"
      unitRef="usd">751000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTQtNS0xLTEtMzAyMjc_14fb9184-ff58-4037-a7aa-a9cdc64bc107"
      unitRef="usd">54000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTQtNy0xLTEtMzAyMjc_26eb935d-7f57-4873-b514-4da2203e7a98"
      unitRef="usd">192000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTUtNS0xLTEtMzAyMjc_70688685-1848-4728-9566-3e665e4901e0"
      unitRef="usd">13657000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTUtNy0xLTEtMzAyMjc_36a9d223-be6f-4fc2-af99-68738abc4779"
      unitRef="usd">11276000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTYtNS0xLTEtMzAyMjc_2fe71061-2416-442e-92d2-bbd4cbd2f3a5"
      unitRef="usd">2418000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTYtNy0xLTEtMzAyMjc_7697e961-8864-46c1-abce-8b5ffb6d72f8"
      unitRef="usd">3424000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTktNS0xLTEtMzAyMjc_fde28e68-28fc-44a1-885a-845af0754485"
      unitRef="usd">11239000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMTktNy0xLTEtMzAyMjc_7a22c97b-15c1-4e86-b011-fec9ea7a6bd8"
      unitRef="usd">7852000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjEtNS0xLTEtMzAyMjc_1bf7abc5-4810-435d-9725-f33b790911f1"
      unitRef="usdPerShare">0.34</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjEtNy0xLTEtMzAyMjc_5c0de694-64c9-4cea-8883-e09528a4a4cf"
      unitRef="usdPerShare">0.24</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjMtNS0xLTEtMzAyMjc_ed0f754a-3e86-4ce0-a56d-cf0f5d5e7cf8"
      unitRef="usdPerShare">0.34</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjMtNy0xLTEtMzAyMjc_31b164cc-e367-49ea-8860-03dbf43e3391"
      unitRef="usdPerShare">0.24</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjYtNS0xLTEtMzAyMjc_03022d9d-d99b-4cc5-9cc5-8ecff7facfe1"
      unitRef="shares">33124000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjYtNy0xLTEtMzAyMjc_fdc2e986-0ad8-49f2-9883-8fb7bf15c05c"
      unitRef="shares">32872000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjctNS0xLTEtMzAyMjc_38a94915-6acb-4bce-8920-4e7f1d1c4cb1"
      unitRef="shares">33298000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjctNy0xLTEtMzAyMjc_7124aeea-005d-4650-95c2-2fd808ed8ae6"
      unitRef="shares">33212000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjktNS0xLTEtMzAyMjc_bc90fc50-869c-4a03-9755-7b4f2597bc70"
      unitRef="usdPerShare">0.08</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18xOS9mcmFnOjRmYmMyMzlhM2JiNDQzZTJhZGE0NTVjNWE4NTBiYjYyL3RhYmxlOjhjYTBiNzA5YmY3ZjRhMmU5ZWNjYjQ5OTA5ZjIzMTMzL3RhYmxlcmFuZ2U6OGNhMGI3MDliZjdmNGEyZTllY2NiNDk5MDlmMjMxMzNfMjktNy0xLTEtMzAyMjc_3e9bd605-5735-4a61-8204-9d9cf64e13cf"
      unitRef="usdPerShare">0.08</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:NetIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfNC01LTEtMS0zMDIyNw_fde28e68-28fc-44a1-885a-845af0754485"
      unitRef="usd">11239000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfNC03LTEtMS0zMDIyNw_25d29f68-47aa-4ec4-aa1d-2bbcf893b256"
      unitRef="usd">7852000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfNi01LTEtMS0zMDIyNw_21f1892b-2cf3-4bd7-89d0-7da1b493f101"
      unitRef="usd">-3159000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfNi03LTEtMS0zMDIyNw_bb9b3312-b909-46d9-8caa-9f0965af1b8e"
      unitRef="usd">8600000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfOS01LTEtMS0zMDIyNw_46230e73-587a-429a-90a6-8c47193d1e87"
      unitRef="usd">-3159000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfOS03LTEtMS0zMDIyNw_a02e01e0-61ad-4680-aa1b-30c77592fc68"
      unitRef="usd">8600000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfMTAtNS0xLTEtMzAyMjc_1c5b255b-3c78-49d0-9ec7-0c4d66b4263c"
      unitRef="usd">8080000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yMi9mcmFnOjlhNjY0N2YyMTRjNjRlZjg5MjljMmI5NWU0NWUwMWRlL3RhYmxlOjRhOTgyNjM4MGNlMDRjODliMmM4YTBmZWVkY2FhYjM1L3RhYmxlcmFuZ2U6NGE5ODI2MzgwY2UwNGM4OWIyYzhhMGZlZWRjYWFiMzVfMTAtNy0xLTEtMzAyMjc_3f1fa34b-b325-45e2-a39a-0c5b015c0c1a"
      unitRef="usd">16452000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ProfitLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNS0xLTEtMS0zMDIyNw_8df9b775-ca80-494b-b04a-9805316a22d6"
      unitRef="usd">11239000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNS0zLTEtMS0zMDIyNw_96c59166-87d4-4a7c-808a-35da4a33bb23"
      unitRef="usd">7852000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNy0xLTEtMS0zMDIyNw_9a51611b-cf76-48d1-8988-4f59ccf55550"
      unitRef="usd">10257000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNy0zLTEtMS0zMDIyNw_9143bfde-b335-41dd-8cd8-c3f43fad6f2c"
      unitRef="usd">11015000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ShareBasedCompensation
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfOC0xLTEtMS0zMDIyNw_2d7b2dfe-5d5d-4be0-86d2-05fd265bca14"
      unitRef="usd">552000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfOC0zLTEtMS0zMDIyNw_57d6c91f-bf33-4125-b898-a843b5cecf6a"
      unitRef="usd">523000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfOS0xLTEtMS0zMDIyNw_4cea7966-77fe-4f9c-88c3-b2d0e20407a3"
      unitRef="usd">854000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfOS0zLTEtMS0zMDIyNw_96089dbf-9e7c-4893-a644-984cdfd87c01"
      unitRef="usd">1925000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTMtMS0xLTEtMzAyMjc_2c76d157-e119-42d3-a7e3-fb224cd69e2e"
      unitRef="usd">-1218000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTMtMy0xLTEtMzAyMjc_fbc2fc07-d2f7-4767-bb26-a3caa9e40dc7"
      unitRef="usd">-3189000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsAndNotesReceivable
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTUtMS0xLTEtMzAyMjc_38727292-0cb8-4c4a-833d-a9f6e25dae85"
      unitRef="usd">-8340000</us-gaap:IncreaseDecreaseInAccountsAndNotesReceivable>
    <us-gaap:IncreaseDecreaseInAccountsAndNotesReceivable
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTUtMy0xLTEtMzAyMjc_a26b9ec7-4810-4223-a570-ae37e54cf8c5"
      unitRef="usd">-7103000</us-gaap:IncreaseDecreaseInAccountsAndNotesReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTYtMS0xLTEtMzAyMjc_9ffab3b9-d89d-4691-841c-1f7930cc193b"
      unitRef="usd">25318000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTYtMy0xLTEtMzAyMjc_5322965d-414f-4082-8daf-75b5f618c0fe"
      unitRef="usd">14061000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTctMS0xLTEtMzAyMjc_1e5c4a40-e64d-4ac2-8183-b39510ee4c1f"
      unitRef="usd">3534000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTctMy0xLTEtMzAyMjc_040dcac4-088f-43c6-9c74-96fab4420328"
      unitRef="usd">873000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTgtMS0xLTEtMzAyMjc_67871113-2b69-481b-9c7d-d3b7d7c73b58"
      unitRef="usd">-8391000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTgtMy0xLTEtMzAyMjc_9d1359d9-619f-4677-b316-bbb9fa01dcaf"
      unitRef="usd">-14577000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTktMS0xLTEtMzAyMjc_dd01e093-cb0d-45c4-a4e8-4d98931ff2e3"
      unitRef="usd">-18248000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMTktMy0xLTEtMzAyMjc_e95c7b7c-91f2-4a07-bcdf-3920c0f2f3c9"
      unitRef="usd">-2692000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjAtMS0xLTEtMzAyMjc_0ef986cc-80f5-44dc-86b0-2a40c13963eb"
      unitRef="usd">1391000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjAtMy0xLTEtMzAyMjc_c060a602-3c29-4cab-9f19-5e2ce6c13bc8"
      unitRef="usd">-2790000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjEtMS0xLTEtMzAyMjc_38d9c491-1ba8-4a4d-ac26-75bc82ea573a"
      unitRef="usd">-80000</us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations>
    <us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjEtMy0xLTEtMzAyMjc_19f74dbd-bdf3-4a81-af89-d41b6d2eec65"
      unitRef="usd">-52000</us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjItMS0xLTEtMzAyMjc_43cd939b-1212-48e0-9a2a-bc05db9e8481"
      unitRef="usd">404000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjItMy0xLTEtMzAyMjc_767510fa-e7f6-4c7a-8fb6-94eef38d219f"
      unitRef="usd">-399000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjMtMS0xLTEtMzAyMjc_fbf63a86-982f-48d0-aa83-d0581180383b"
      unitRef="usd">335000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjMtMy0xLTEtMzAyMjc_b22563b0-d7db-48c8-b8d9-ee09d90d0425"
      unitRef="usd">-442000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjQtMS0xLTEtMzAyMjc_ebc465b6-89a4-4f6d-9c42-d7cd2598cd18"
      unitRef="usd">-21651000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjQtMy0xLTEtMzAyMjc_d8d97e29-fe38-47f7-97a4-fa68da1bf0c2"
      unitRef="usd">-3395000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjgtMS0xLTEtMzAyMjc_9933560b-68e5-43a3-a287-7b314bdbde4f"
      unitRef="usd">7370000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMjgtMy0xLTEtMzAyMjc_b5654497-9761-45b1-ab92-e73d1a60af6c"
      unitRef="usd">5246000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzAtMS0xLTEtMzAyMjc_215b61e1-9523-42c1-99a0-7146b41f0c00"
      unitRef="usd">10000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzAtMy0xLTEtMzAyMjc_01b7ec08-716c-424c-97e4-7570a070a9b6"
      unitRef="usd">64000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzEtMS0xLTEtMzAyMjc_89c7d5ad-223d-4e11-9065-e451cfef8839"
      unitRef="usd">-7360000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzEtMy0xLTEtMzAyMjc_e3f376c4-1e3a-4f9e-9231-bb5b71514c2d"
      unitRef="usd">-5182000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzMtMS0xLTEtMzAyMjc_8e9253e4-56f6-4fe7-8485-b44aa147de66"
      unitRef="usd">28000000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzMtMy0xLTEtMzAyMjc_e8e5105b-7546-4536-baac-4f4687f6d17c"
      unitRef="usd">0</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzQtMS0xLTEtMzAyMjc_fe4b745d-7429-4270-a132-b5a68b978729"
      unitRef="usd">3000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzQtMy0xLTEtMzAyMjc_0efe1255-7d2b-44ca-ae24-47f5d309c029"
      unitRef="usd">5000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzYtMS0xLTEtMzAyMjc_506d96ef-d7cb-4483-8a26-70cd7e5760d2"
      unitRef="usd">228000</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzYtMy0xLTEtMzAyMjc_56479eb7-1b84-4ec8-8fcc-c745479649a0"
      unitRef="usd">541000</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzctMS0xLTEtMzAyMjc_435323bd-268e-4dc1-abd6-0e0b240d2e81"
      unitRef="usd">2587000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzctMy0xLTEtMzAyMjc_ea442ad0-b787-4a4e-9aa4-83b2575fcede"
      unitRef="usd">2637000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzgtMS0xLTEtMzAyMjc_9d574d0a-6953-4264-a164-b3c1b2567976"
      unitRef="usd">55000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfMzgtMy0xLTEtMzAyMjc_d89ecf71-238b-45de-abf7-9d00f7a5d20c"
      unitRef="usd">10030000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDAtMS0xLTEtMzAyMjc_838a8290-8231-4cf6-9e9d-40d765a3b33d"
      unitRef="usd">1383000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDAtMy0xLTEtMzAyMjc_bae055b5-5d49-49f8-840c-a9981946fb0c"
      unitRef="usd">492000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDEtMS0xLTEtMzAyMjc_6a1a87c3-5430-43a3-9b6e-2ec27ec8dfd0"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDEtMy0xLTEtMzAyMjc_c32d374d-f023-4ee3-9c77-e84725f3b7c4"
      unitRef="usd">1927000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDItMS0xLTEtMzAyMjc_0b9e5b4a-20ff-4110-b7a8-34f10798a1cc"
      unitRef="usd">20857000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDItMy0xLTEtMzAyMjc_5da0bb35-2122-4f9b-aae9-b4745e0a9802"
      unitRef="usd">-567000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDMtMS0xLTEtMzAyMjc_eff8e470-ded1-4fcb-9291-5996d75bfe55"
      unitRef="usd">-188000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDMtMy0xLTEtMzAyMjc_22a7360a-718e-4795-bf55-6fac396cc239"
      unitRef="usd">949000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDQtMS0xLTEtMzAyMjc_a478cad9-411c-4d08-a3b5-25316ab8ad47"
      unitRef="usd">-8342000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDQtMy0xLTEtMzAyMjc_06669aa8-3fc6-4e10-ab2b-f555e4a9c193"
      unitRef="usd">-8195000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDUtMS0xLTEtMzAyMjc_4f1fa5ac-eaa0-417c-842e-a1a4a98013cd"
      unitRef="usd">40061000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="if50b22002792464ebb830186cc444d7d_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDUtMy0xLTEtMzAyMjc_7db37a7e-fa1a-40ab-a42c-723fb408771b"
      unitRef="usd">51621000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDYtMS0xLTEtMzAyMjc_f891f96b-ec16-4ae8-9c35-f284780bdacc"
      unitRef="usd">31719000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i5a8691053c694a74a1498bbb25420ef2_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yNS9mcmFnOjIxYTY0YWIyNzM2MjRiNjU4MDllZDQ1OTUzNjNjYTRmL3RhYmxlOjFiMDI1YzM5MjkzNTRkMzlhYTZhZWUyNzcxYjYxYzAyL3RhYmxlcmFuZ2U6MWIwMjVjMzkyOTM1NGQzOWFhNmFlZTI3NzFiNjFjMDJfNDYtMy0xLTEtMzAyMjc_35f129e1-6d03-46ee-8220-230981fd7e76"
      unitRef="usd">43426000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:StockholdersEquity
      contextRef="i6075fbfdab194d8382d68fd9423e6867_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMi0xLTEtMS0zMDIyNw_8808b530-21eb-4a95-8330-7e791d7a8b51"
      unitRef="usd">373000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia0ecafe2895b4d3580b8dc7e8f2e19fd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMi0zLTEtMS0zMDIyNw_cd0931b4-7591-4732-8190-8fcc56ac1616"
      unitRef="usd">254162000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4589137368bb4d5da5f2a8a2bb77dedc_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMi01LTEtMS0zMDIyNw_f7fb583e-55e8-45aa-8039-f483310a283e"
      unitRef="usd">259718000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia69ccc590e094a119c79cde033177e98_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMi03LTEtMS0zMDIyNw_543847e1-7172-467d-9a6f-d93e08c8b636"
      unitRef="usd">-21770000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i03219c6351e54e71a85530335fb87cb5_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMi05LTEtMS0zMDIyNw_9a43adbb-5da1-4894-860a-36920f15976f"
      unitRef="usd">-72701000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMi0xMS0xLTEtMzAyMjc_4766d8f2-63fb-4e8c-b18c-bbef11d6facc"
      unitRef="usd">419782000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i3c4e9b22d81b41fdac258fd05e0c56ef_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMy01LTEtMS0zMDIyNw_97f603c8-2579-412e-aba5-d3ff0d16c5ce"
      unitRef="usd">11239000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMy0xMS0xLTEtMzAyMjc_2c08485f-e611-4881-9476-dadda391e22d"
      unitRef="usd">11239000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i5705b57a75944d46bd60989598935438_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNC03LTEtMS0zMDIyNw_83d69f8e-3fa0-408e-ba6c-51bc5f03d859"
      unitRef="usd">-3159000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNC0xMS0xLTEtMzAyMjc_a663fff7-7898-4d6f-b36f-c8045df7a228"
      unitRef="usd">-3159000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNS0wLTEtMS0zMDIyNy90ZXh0cmVnaW9uOjQyNWE0NTEyMzJlZDQ3NTY4OTU1YzBjODIwMDc1YjY3XzIy_1628403e-97a3-48ab-ab71-efa8a4c017a1"
      unitRef="usdPerShare">0.08</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStockCash
      contextRef="i3c4e9b22d81b41fdac258fd05e0c56ef_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNS01LTEtMS0zMDIyNw_328db58a-8406-47c8-b4e2-9cafcd6da1c3"
      unitRef="usd">2587000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNS0xMS0xLTEtMzAyMjc_d8707983-0770-4dc2-a5c8-083d7a0b5265"
      unitRef="usd">2587000</us-gaap:DividendsCommonStockCash>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ib0ce55cdf06d43159beeff78de1643b5_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfOS0zLTEtMS0zMDIyNw_21b83f3c-016a-4805-8e18-cf9a78b03be8"
      unitRef="usd">552000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfOS0xMS0xLTEtMzAyMjc_f8dea3c5-d352-4278-b024-4105b283f9cb"
      unitRef="usd">552000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ib0ce55cdf06d43159beeff78de1643b5_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTAtMy0xLTEtMzAyMjc_50d040c7-de4d-4951-b700-3cb3191b4d79"
      unitRef="usd">5000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i6305a059ee144ff3bd1b9101aaf848c2_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTAtOS0xLTEtMzAyMjc_6d786ded-a6ed-4b5f-a215-b242b3b16776"
      unitRef="usd">50000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTAtMTEtMS0xLTMwMjI3_d98ef64a-5147-4be2-a8c3-cca9ee6d8fc1"
      unitRef="usd">55000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="ib0ce55cdf06d43159beeff78de1643b5_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTEtMy0xLTEtMzAyMjc_7a08c9d4-47a2-48f8-86d5-a34fbc76ee6f"
      unitRef="usd">-1534000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="i6305a059ee144ff3bd1b9101aaf848c2_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTEtOS0xLTEtMzAyMjc_4ba62ffd-b56e-4927-b0f3-6d85cf7b9455"
      unitRef="usd">1534000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested
      contextRef="ib0ce55cdf06d43159beeff78de1643b5_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTItMy0xLTEtMzAyMjc_0fa2e796-83a7-4785-9dcd-f0ca694e0cd6"
      unitRef="usd">-1598000</nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested>
    <nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested
      contextRef="i6305a059ee144ff3bd1b9101aaf848c2_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTItOS0xLTEtMzAyMjc_faced3c2-8ed9-449f-b6ee-d005d9b803cf"
      unitRef="usd">1598000</nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested>
    <us-gaap:StockholdersEquityOther
      contextRef="ib0ce55cdf06d43159beeff78de1643b5_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTMtMy0xLTEtMzAyMjc_9c12e773-828c-4a0a-96bc-156de943d62a"
      unitRef="usd">1383000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityOther
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTMtMTEtMS0xLTMwMjI3_5f6dbf7e-7a94-4ee2-a8c9-eedbedaab51a"
      unitRef="usd">1383000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquity
      contextRef="i2939723edd7d400e82ac0dd1927306cd_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTQtMS0xLTEtMzAyMjc_b67d0a84-741a-44e8-8265-f36179570eed"
      unitRef="usd">373000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i90750c53a2c74752b93c618bbfa8a366_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTQtMy0xLTEtMzAyMjc_ca766590-30eb-4d4c-a7ef-e8cb252627fb"
      unitRef="usd">250204000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i426a76d2757549a79ff6c797e19c2f06_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTQtNS0xLTEtMzAyMjc_b366876d-3c0e-43de-b1cf-f83235f8c424"
      unitRef="usd">268370000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib6f0e19faa37471da0c639bdf6276f95_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTQtNy0xLTEtMzAyMjc_b0c14be8-141c-4eb8-9f65-90b1723f3b0d"
      unitRef="usd">-24929000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ibe6c2d1810b54751a34ae44854b7f1ab_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTQtOS0xLTEtMzAyMjc_79456ad1-2a0f-42ef-9422-691529861df0"
      unitRef="usd">-69519000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfMTQtMTEtMS0xLTMwMjI3_8c8a7bac-cdb5-4efa-85d0-46bcd8d633a2"
      unitRef="usd">424499000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i726c06b8e1524432bc9bfe3feb182fbd_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDEtMS0xLTEtMzAyMjc_51fa0ff0-086f-4a16-91d1-c247866ebf0e"
      unitRef="usd">373000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iffe3a00b39a447dc8400b24dbf36575a_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDEtMy0xLTEtMzAyMjc_962f2b30-8112-48a1-90c9-a5da50469534"
      unitRef="usd">253458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia574d506a6ac4ea9bcf3fbb978fd2a18_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDEtNS0xLTEtMzAyMjc_49dc4ad4-5d2f-4d3b-9a6a-ad9bc5d9aae9"
      unitRef="usd">213517000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i055ec66b97224d50bd32dc61979196cb_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDEtNy0xLTEtMzAyMjc_e9a6aa9e-3f53-4263-ac5f-fd23bccc29a0"
      unitRef="usd">-33024000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia2d8a22a70344a35b2b7d35f89fa1f5d_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDEtOS0xLTEtMzAyMjc_23dc2019-8bfc-49db-adf2-84390305a74b"
      unitRef="usd">-78565000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if50b22002792464ebb830186cc444d7d_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDEtMTEtMS0xLTMwMjI3_df1885cc-2163-4e88-a802-aa35a168557f"
      unitRef="usd">355759000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i7f370de091a442b9800d1ea3f74f7134_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDItNS0xLTEtMzAyMjc_381457df-9ba2-4992-a48c-bc6cab5c1e35"
      unitRef="usd">7852000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDItMTEtMS0xLTMwMjI3_f4844827-e5c2-47a7-bc64-1a281c3d9133"
      unitRef="usd">7852000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="if3e7ecb40f494db1bb799751711388aa_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDMtNy0xLTEtMzAyMjc_2cefdc79-8c13-46d6-9657-3b75393e776d"
      unitRef="usd">8600000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDMtMTEtMS0xLTMwMjI3_cbced2bd-0d46-415e-927f-694fc7737a06"
      unitRef="usd">8600000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:DividendsCommonStockCash
      contextRef="i7f370de091a442b9800d1ea3f74f7134_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDQtNS0xLTEtMzAyMjc_6d3fcfa1-a415-4075-99f9-b70bd578880d"
      unitRef="usd">2637000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDQtMTEtMS0xLTMwMjI3_5e502a40-192e-4df5-bec6-5c111556343e"
      unitRef="usd">2637000</us-gaap:DividendsCommonStockCash>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i119268474e0548cdbef89499707d54a2_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDUtOS0xLTEtMzAyMjc_149237c2-bcce-47fa-873d-c8a24fb72e46"
      unitRef="usd">1927000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDUtMTEtMS0xLTMwMjI3_28fce0cd-ec1f-4545-b88e-853cd5fece1c"
      unitRef="usd">1927000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i70eaf214db424884927dfe6e45bfab6b_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDgtMy0xLTEtMzAyMjc_65ed55cf-50db-4921-9aae-56ff7170e378"
      unitRef="usd">523000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDgtMTEtMS0xLTMwMjI3_177b2664-1d30-4da3-9a30-5cd06c1f971d"
      unitRef="usd">523000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i70eaf214db424884927dfe6e45bfab6b_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDktMy0xLTEtMzAyMjc_67ba3e74-3b20-4c56-a4db-8c98b5509123"
      unitRef="usd">635000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i119268474e0548cdbef89499707d54a2_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDktOS0xLTEtMzAyMjc_bb80243c-b2e1-45db-a2bf-4dabd0835aec"
      unitRef="usd">9395000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNDktMTEtMS0xLTMwMjI3_1b84681a-21cd-4eb3-89af-5d59579ec1ba"
      unitRef="usd">10030000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="i70eaf214db424884927dfe6e45bfab6b_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTAtMy0xLTEtMzAyMjc_4802adfb-8123-4984-a415-1c17698269c2"
      unitRef="usd">-1282000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="i119268474e0548cdbef89499707d54a2_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTAtOS0xLTEtMzAyMjc_28fa74a2-6f3d-49ab-af6d-f9c09c718048"
      unitRef="usd">1282000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested
      contextRef="i70eaf214db424884927dfe6e45bfab6b_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTEtMy0xLTEtMzAyMjc_aa0e8ecb-16a0-49b5-969a-e7fa9ccf17b5"
      unitRef="usd">-565000</nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested>
    <nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested
      contextRef="i119268474e0548cdbef89499707d54a2_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTEtOS0xLTEtMzAyMjc_274eee4b-45f5-4401-bea0-b3662e96c9ab"
      unitRef="usd">565000</nx:StockIssuedDuringPeriodTreasurySharesPerformanceSharesVested>
    <us-gaap:StockholdersEquityOther
      contextRef="i70eaf214db424884927dfe6e45bfab6b_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTItMy0xLTEtMzAyMjc_47c31cf0-c787-40f7-91fe-5110afc421b1"
      unitRef="usd">492000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityOther
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTItMTEtMS0xLTMwMjI3_e3e975c2-528a-4643-97ac-aac521a916b3"
      unitRef="usd">492000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquity
      contextRef="i820c132aff584fb5b95b5cf819e821c3_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTMtMS0xLTEtMzAyMjc_e90f29a1-2a9c-4019-90d0-602f01aa74e5"
      unitRef="usd">373000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8e109577233444bca2801ae25c75b39e_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTMtMy0xLTEtMzAyMjc_c3ba3f3c-09eb-45ef-b439-7df8a0c9b8d4"
      unitRef="usd">252277000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3d784bfe33054adb9ca4fe6fee8a6391_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTMtNS0xLTEtMzAyMjc_b76732b0-791c-41bf-9063-092b9204b71b"
      unitRef="usd">218732000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8a4f4f8986b64808bc4ecf23594f2a68_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTMtNy0xLTEtMzAyMjc_417a5439-5f62-4b29-ba09-7200c361faf5"
      unitRef="usd">-24424000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if26c75b5bffb4269ba2556776ed7de26_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTMtOS0xLTEtMzAyMjc_4c3b6840-30d8-4664-a207-3aa0ec00de4e"
      unitRef="usd">-69250000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5a8691053c694a74a1498bbb25420ef2_I20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18yOC9mcmFnOjJmZmVmMzg4MTNiNTRhOGY4YjVmYjIzMWI3ZjQ0YzA4L3RhYmxlOmQ4YjliOTA2MzgwNTRkYmM5ZTc5NTc5ZDFiNjU2MmM1L3RhYmxlcmFuZ2U6ZDhiOWI5MDYzODA1NGRiYzllNzk1NzlkMWI2NTYyYzVfNTMtMTEtMS0xLTMwMjI3_5a8d9324-05d2-43c9-893c-1cc8f9a9b0b3"
      unitRef="usd">377708000</us-gaap:StockholdersEquity>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RleHRyZWdpb246MDY3MWJlODJmODliNDkxZWFmNDIxOWYyMDZhYzJiN2JfOTUwOA_860ef1a4-a17b-4342-a5c6-2bf41db873a2">Nature of Operations and Basis of Presentation &lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Quanex Building Products Corporation is a component supplier to original equipment manufacturers (OEMs) in the building products industry. These components can be categorized as window and door (fenestration) components and kitchen and bath cabinet components. Examples of fenestration components include: (1) energy-efficient flexible insulating glass spacers, (2) extruded vinyl profiles, (3) window and door screens, and (4) precision-formed metal and wood products. We also manufacture cabinet doors and other components for OEMs in the kitchen and bathroom cabinet industry. In addition, we provide certain other non-fenestration components and products, which include solar panel sealants, trim moldings, vinyl decking, vinyl fencing, water retention barriers, and conservatory roof components. We have organized our business into three reportable business segments. For additional discussion of our reportable business segments, see Note 11, &#x201c;Segment Information.&#x201d; We use low-cost, short lead-time production processes and engineering expertise to provide our customers with specialized products for their specific window, door, and cabinet applications. We believe these capabilities provide us with unique competitive advantages. We serve a primary customer base in North America and the United Kingdom (U.K.), and also serve customers in international markets through our operating plants in the U.K. and Germany, as well as through sales and marketing efforts in other countries. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; Unless the context indicates otherwise, references to &#x201c;Quanex&#x201d;, the &#x201c;Company&#x201d;, &#x201c;we&#x201d;, &#x201c;us&#x201d; and &#x201c;our&#x201d; refer to the consolidated business operations of Quanex Building Products Corporation and its subsidiaries.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying interim unaudited condensed consolidated financial statements include the accounts of Quanex Building Products Corporation. All intercompany accounts and transactions have been eliminated in consolidation. These financial statements have been prepared by us, without audit, pursuant to the rules and regulations of the Securities and Exchange Commission (SEC). Certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (U.S. GAAP) have been condensed or omitted pursuant to such rules and regulations. The condensed consolidated balance sheet as of October&#160;31, 2021 was derived from audited financial information but does not include all disclosures required by U.S. GAAP. The accompanying financial statements should be read in conjunction with the audited consolidated financial statements and the notes thereto, included in our Annual Report on Form 10-K for the fiscal year ended October&#160;31, 2021. In our opinion, the accompanying financial statements contain all adjustments (which consist of normal recurring adjustments, except as disclosed herein) necessary to fairly present our financial position, results of operations and cash flows for the interim periods. The results of operations for the periods presented are not necessarily indicative of the results to be expected for the full year or for any future periods. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In preparing financial statements, we make informed judgments and estimates that affect the reported amounts of assets and liabilities as of the date of the financial statements and affect the reported amounts of revenues and expenses during the reporting period. We review our estimates on an on-going basis, including those related to impairment of long-lived assets and goodwill, contingencies and income taxes. Changes in facts and circumstances may result in revised estimates and actual results may differ from these estimates.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue from Contracts with Customers&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Revenue recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recognize revenue that reflects the consideration we expect to receive for product sales upon transfer to customers. Revenue for product sales is recognized when control of the promised products is transferred to our customers, and we are entitled to consideration in exchange for such transfer. We account for a contract when a customer provides us with a firm purchase order that identifies the products to be provided, the payment terms for those products, and when collectability of the consideration due is probable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A performance obligation is a promise to provide the customer with a good or service. Our performance obligations include product sales, with each product included in a customer contract being recognized as a separate performance obligation.  For contracts with multiple performance obligations, the standalone selling price of each product is generally readily observable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from product sales is recognized at a point in time when the product is transferred to the customer, in accordance with the shipping terms, which is generally upon shipment. We estimate a provision for sales returns and warranty allowances to account for product returns related to general returns and product nonconformance.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We generally expense incremental costs of obtaining a contract when incurred because the amortization period would be less than one year. Additionally, we do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Pricing and sales incentives&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pricing is established at or prior to the time of sale with our customers and we record sales at the agreed-upon net selling price, reflective of current and prospective discounts.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Shipping and handling costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for shipping and handling services as fulfillment services; accordingly, freight revenue is combined with the product deliverable rather than being accounted for as a distinct performance obligation within the terms of the agreement.  Shipping and handling costs incurred by us for the delivery of goods to customers are considered a cost to fulfill the contract and are included in&#160; cost of sales&#160;in the accompanying condensed consolidated statements of income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Contract assets and liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred revenue, which is not significant, is recorded when we have remaining unsatisfied performance obligations for which we have received consideration. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Disaggregation of revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We produce a wide variety of products that are used in the fenestration industry, including window spacer systems; extruded vinyl products; metal fabricated products; and astragals, thresholds and screens. In addition, we produce certain non-fenestration products, including kitchen and bath cabinet doors and components, flooring and trim moldings, solar edge tape, plastic decking, fencing, water retention barriers, conservatory roof components, and other products. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes our product sales for the three months ended January&#160;31, 2022 and 2021 into groupings by segment which we believe depicts how the nature, amount, timing and uncertainty of our revenues and cash flows are affected by economic factors. For further details regarding our results by segment, refer to Note 11, &#x201c;Segment Information&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;North American Fenestration:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,778&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;European Fenestration:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,354&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,737&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;North American Cabinet Components:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,765&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Unallocated Corporate &amp;amp; Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,054)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,054)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267,040&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;230,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:10pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Allowance for Credit Losses&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have established an allowance for credit losses to estimate the risk of losses, which represents an estimate of expected losses over the remaining contractual life of our receivables. The allowance is determined using two methods. The amounts calculated from each of these methods are combined to determine the total amount reserved. First, a specific reserve is established for individual accounts where information indicates the customers may have an inability to meet financial obligations. Second, a reserve is determined for all customers based on a range of percentages applied to aging categories. These percentages are based on historical collection rates, write-off experience, and forecasts of future economic conditions. Actual write-offs are charged against the allowance when collection efforts have been unsuccessful.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Related Parties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;N&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;et sales for the three months ended January 31, 2022 included approximately $0.4&#160;million of transactions with a customer which is a related party with one of our non-employee directors. We performed a review of these transactions, of which no single transaction or series of related transactions exceeded $120,000 in amount, and determined that these transactions were enacted independently of each other in fair transactions. We are not aware of any other related party transactions with any of our current non-employee directors or officers outside of their normal business functions or expected contractual duties. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;COVID-19 Impact&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On March 11, 2020, the World Health Organization (WHO) declared the outbreak of COVID-19 as a global pandemic and advised aggressive containment action. The COVID-19 pandemic and its impacts are continuing to have an adverse effect on many sectors of the economy, including negative impacts to the global supply chain and increased inflation. Measures providing for business shutdowns generally exclude certain essential services commonly including critical infrastructure such as &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;construction and the businesses that support that critical infrastructure. To date, we have not experienced significant challenges or expenses implementing crisis management plans intended for containment and prevention. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The health and safety of our employees are high priority. In response to the COVID-19 pandemic, we have taken additional measures to limit possible infections at the workplace by implementing social distancing, sanitizing the workspace, and requiring employees to report any COVID-19 symptoms to ensure safety as infection surges dictate. We continue to assess and refine these measures on an ongoing basis as public health guidance and applicable laws and regulations continue to evolve.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the economic and business impact of COVID-19, we may be required to revise certain accounting estimates and judgments such as, but not limited to, those related to the valuation of goodwill, intangibles, right-of-use assets, long-lived assets, accounts receivable (including allowances for credit losses), and inventory, which could have a material adverse effect on our financial position and results of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RleHRyZWdpb246MDY3MWJlODJmODliNDkxZWFmNDIxOWYyMDZhYzJiN2JfODkz_9c08e0d1-ec5b-4870-9194-1c44db5b7f54"
      unitRef="segment">3</us-gaap:NumberOfReportableSegments>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RleHRyZWdpb246MDY3MWJlODJmODliNDkxZWFmNDIxOWYyMDZhYzJiN2JfOTUxNQ_5202a907-4254-45b0-a938-6d59552d6a92">&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;North American Fenestration:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,778&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;European Fenestration:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,354&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,737&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;North American Cabinet Components:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,765&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;International - non-fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Unallocated Corporate &amp;amp; Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,054)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,054)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267,040&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;230,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ife899e264069477096bb31185fb82355_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfNS01LTEtMS0zMDIyNw_f9f65e2c-2b74-426c-a233-1fb2f5d26357"
      unitRef="usd">128367000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic5213f3939b542778a06df70bd1dff92_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfNS03LTEtMS0zMDIyNw_a5874048-ed4e-4ac0-9a1b-01a596407f1f"
      unitRef="usd">112300000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i86bd490c2a9d4562acc929a23510d1f9_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfNi01LTEtMS0zMDIyNw_c82a3626-4c3e-42cd-b2cc-9b2aaf85e50f"
      unitRef="usd">9136000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i32d5ee3fabf045198481581809b3cdf2_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfNi03LTEtMS0zMDIyNw_bc96c0ec-8c3f-4e9b-91d7-22a8e7538386"
      unitRef="usd">7778000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9898e669cd2b4d7683550201c83839c0_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfNy01LTEtMS0zMDIyNw_11dd4c86-b5e2-468c-928f-08eca61c4628"
      unitRef="usd">6716000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i45a99e1445264520a81a2e87e8427681_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfNy03LTEtMS0zMDIyNw_93358a63-2b28-4c10-8c82-3a5b56aade54"
      unitRef="usd">5398000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i946c85a7f14a402f82d753f5630c6b03_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfOC01LTEtMS0zMDIyNw_9c74641b-b6d8-45af-a3ef-93394012c369"
      unitRef="usd">2412000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia956e473cc0d4594baf9d93730d6f9d9_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfOC03LTEtMS0zMDIyNw_a189fc0b-e54a-4032-ba36-3721d40e1a38"
      unitRef="usd">2640000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfOS01LTEtMS0zMDIyNw_5b0465af-c003-494d-8b55-0d882e3abfa7"
      unitRef="usd">146631000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfOS03LTEtMS0zMDIyNw_bcee355b-f2b8-4ec8-878d-10524c63e26f"
      unitRef="usd">128116000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i24e4d3d4105f4e538444c975369ae5e7_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTItNS0xLTEtMzAyMjc_75cebef1-b7d8-4cb8-958d-4a85f0e8c27b"
      unitRef="usd">44621000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7608adbc25084f2eb832778650465444_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTItNy0xLTEtMzAyMjc_8be4d19d-570d-4683-b5ce-1d5dfd8d5151"
      unitRef="usd">41354000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i95c8d23b41a64e7b82eaea007c388af5_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTMtNS0xLTEtMzAyMjc_fca755ef-2d94-4fe1-b1c6-487fb6d8cc16"
      unitRef="usd">14293000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2b2d680d011342cc9683354606133e46_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTMtNy0xLTEtMzAyMjc_4a8b9d2a-df8a-459a-b78f-2764bc5fdc74"
      unitRef="usd">7737000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTQtNS0xLTEtMzAyMjc_88191f2a-9e4b-4f30-975e-96f0ecf87af5"
      unitRef="usd">58914000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTQtNy0xLTEtMzAyMjc_a1917414-8014-4a6e-b3ce-f75ad7428dc9"
      unitRef="usd">49091000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i59b0162d5fc5491691ea160105361f31_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTYtNS0xLTEtMzAyMjc_16ee773c-719f-4fd4-8cb8-c9eb824d39c3"
      unitRef="usd">3765000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1e446722e5384ea1a6885bd573a2d77c_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTYtNy0xLTEtMzAyMjc_45853b5c-ead2-4799-860c-e7387784a49a"
      unitRef="usd">2974000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0ee3c081b0bd47d39ab5793fc4d5f3f3_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTctNS0xLTEtMzAyMjc_3067d2ad-9fb3-49bb-80f0-f275c7f6c32b"
      unitRef="usd">57767000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i73f4b7dfe4ff4e73b43223f1ed387cae_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTctNy0xLTEtMzAyMjc_39a7eece-d96d-4d96-bf9e-8b8e72d691ac"
      unitRef="usd">50502000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ide1ef3198848409f813b5cdaf8f0fce3_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTgtNS0xLTEtMzAyMjc_792cf9f6-a5a2-4f46-bee8-105d14517e2d"
      unitRef="usd">821000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib1c4c14042fe407d86d556a8bac998ce_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTgtNy0xLTEtMzAyMjc_0cf3a088-b20a-4cdb-acf0-e208fb64eacc"
      unitRef="usd">518000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTktNS0xLTEtMzAyMjc_a65757c4-a587-48df-bf01-feeecbe12b43"
      unitRef="usd">62353000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMTktNy0xLTEtMzAyMjc_577bc5a3-ee55-4d3a-8f34-ce0c0a647385"
      unitRef="usd">53994000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMjEtNS0xLTEtMzAyMjc_5b3a7533-cd23-428c-88d9-28d0afa8cbee"
      unitRef="usd">-858000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMjEtNy0xLTEtMzAyMjc_bbe691c5-d848-48a1-ad71-a89fe753f603"
      unitRef="usd">-1054000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMjItNS0xLTEtMzAyMjc_42530e58-165e-47f5-95f1-9e988c3e8217"
      unitRef="usd">-858000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMjItNy0xLTEtMzAyMjc_f7f294a4-9c27-4578-87d8-ced2587ed8f5"
      unitRef="usd">-1054000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMjMtNS0xLTEtMzAyMjc_3bd8a162-11ff-4c8e-a247-31d1287921f0"
      unitRef="usd">267040000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RhYmxlOjAzZTQ4NTEzM2VmODQzM2FhM2ZlMjFhMzJjYTAxN2JhL3RhYmxlcmFuZ2U6MDNlNDg1MTMzZWY4NDMzYWEzZmUyMWEzMmNhMDE3YmFfMjMtNy0xLTEtMzAyMjc_9e195080-5610-41e4-8daf-85f07ed5c56a"
      unitRef="usd">230147000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RleHRyZWdpb246MDY3MWJlODJmODliNDkxZWFmNDIxOWYyMDZhYzJiN2JfMTY0OTI2NzQ1MzIwNQ_e0619d37-9117-4da2-bbb0-fee398c53582"
      unitRef="usd">400000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ic6d55f89ce194588b2ffca0b9404c54b_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNC9mcmFnOjA2NzFiZTgyZjg5YjQ5MWVhZjQyMTlmMjA2YWMyYjdiL3RleHRyZWdpb246MDY3MWJlODJmODliNDkxZWFmNDIxOWYyMDZhYzJiN2JfMTA5OTUxMTYzOTM3MA_bc92703d-6511-475b-bb10-d74471092018"
      unitRef="usd">120000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RleHRyZWdpb246MDRhYjFmZWUxODg2NGRmNWE5MzRmMzBmM2IyZTkyY2VfMjcx_683d9ab2-bf91-4e01-ba85-f2990b7b3a12">Inventories&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consisted of the following at January&#160;31, 2022 and October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:71.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;br/&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;October 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods and work in process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;51,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Supplies and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Inventory reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;117,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;92,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;Fixed costs related to excess manufacturing capacity, if any, have been expensed in the period they were incurred and, therefore, are not capitalized into inventory.</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RleHRyZWdpb246MDRhYjFmZWUxODg2NGRmNWE5MzRmMzBmM2IyZTkyY2VfMjYy_5ead057b-35e7-42bb-b5f0-a51f38affa53">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consisted of the following at January&#160;31, 2022 and October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:71.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;br/&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;October 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods and work in process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;51,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Supplies and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,099&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Inventory reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;117,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;92,529&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;Fixed costs related to excess manufacturing capacity, if any, have been expensed in the period they were incurred and, therefore, are not capitalized into inventory.</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfMS0xLTEtMS0zMDIyNw_27afea9c-4475-4b9a-9098-da13b9f4c07e"
      unitRef="usd">65492000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfMS0zLTEtMS0zMDIyNw_f77cfc6a-465e-40a8-9a23-2139367445a7"
      unitRef="usd">49867000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryFinishedGoodsAndWorkInProcess
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfMi0xLTEtMS0zMDIyNw_df593f4f-2a37-4867-8b13-a10125422ae1"
      unitRef="usd">51932000</us-gaap:InventoryFinishedGoodsAndWorkInProcess>
    <us-gaap:InventoryFinishedGoodsAndWorkInProcess
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfMi0zLTEtMS0zMDIyNw_9f405680-6a22-49a2-83c6-358957a691d0"
      unitRef="usd">43499000</us-gaap:InventoryFinishedGoodsAndWorkInProcess>
    <us-gaap:OtherInventorySupplies
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfMy0xLTEtMS0zMDIyNw_88da8549-f221-4716-992f-220b9c28ae4e"
      unitRef="usd">2486000</us-gaap:OtherInventorySupplies>
    <us-gaap:OtherInventorySupplies
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfMy0zLTEtMS0zMDIyNw_1713c354-6d42-41c4-ad9d-5394b4e26eac"
      unitRef="usd">2099000</us-gaap:OtherInventorySupplies>
    <us-gaap:InventoryGross
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfNC0xLTEtMS0zMDIyNw_2a1612a0-2bef-46c5-a03c-a1a82bb72fea"
      unitRef="usd">119910000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfNC0zLTEtMS0zMDIyNw_a900a05e-80f7-4d9b-9aee-afbe349a2208"
      unitRef="usd">95465000</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfNS0xLTEtMS0zMDIyNw_c4c7b3a6-e128-4566-8cd3-cdd6f0de63c8"
      unitRef="usd">2526000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfNS0zLTEtMS0zMDIyNw_082d0d19-d6e7-4475-9d2e-af03ff5b6ecf"
      unitRef="usd">2936000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfNi0xLTEtMS0zMDIyNw_bfd3c6a2-0d6d-4551-8ce7-ff389880d629"
      unitRef="usd">117384000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY18zNy9mcmFnOjA0YWIxZmVlMTg4NjRkZjVhOTM0ZjMwZjNiMmU5MmNlL3RhYmxlOjcyYTIzYzgwYmY5MzQwODM4YTExM2U5YmEyZjM1YjNjL3RhYmxlcmFuZ2U6NzJhMjNjODBiZjkzNDA4MzhhMTEzZTliYTJmMzViM2NfNi0zLTEtMS0zMDIyNw_115d1a6e-a5cd-485e-b0a9-203370bdcddd"
      unitRef="usd">92529000</us-gaap:InventoryNet>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfMTE5OQ_2076c8aa-d60e-440f-a6b2-2c8d241ec08e">Goodwill and Intangible Assets &lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in the carrying amount of goodwill for the three months ended January&#160;31, 2022 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance as of November 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;149,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,412)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of the end of the period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At our last annual test date, August 31, 2021, we evaluated the recoverability of goodwill at each of our five reporting units with goodwill balances and determined that our goodwill was not impaired. We evaluated for indicators of impairment during the three months ended January 31, 2022 and determined that there were no triggering events. For a summary of the change in the carrying amount of goodwill by segment, see Note 11, &#x201c;Segment Information.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Identifiable Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortizable intangible assets consisted of the following as of January&#160;31, 2022 and October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.321%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,207&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;81,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks and trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Patents and other technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,504&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;224,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;142,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We had aggregate amortization expense related to intangible assets for the three months ended January&#160;31, 2022 of $3.0 million and $3.4 million for the comparable prior year period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimated remaining amortization expense, based on current intangible balances, for each of the fiscal years ending October 31, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Estimated&lt;br/&gt;Amortization Expense&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022 (remaining nine months)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,049&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,573&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,180&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfMTIwMQ_197b9093-a15f-4089-9fcd-9373285c579b">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in the carrying amount of goodwill for the three months ended January&#160;31, 2022 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance as of November 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;149,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,412)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of the end of the period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the change in the carrying amount of goodwill by reportable business segment for the three months ended January&#160;31, 2022 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.032%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;EU Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Cabinet Comp.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Unallocated Corp. &amp;amp; Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance as of October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;149,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,412)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,412)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#bfe4ff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance as of January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,934&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjExM2JmMmE0MDAxMTQzNGE4OGFiZDQ1NzM4MzA0Y2Y2L3RhYmxlcmFuZ2U6MTEzYmYyYTQwMDExNDM0YTg4YWJkNDU3MzgzMDRjZjZfMi0xLTEtMS0zMDIyNw_0f54efcf-8c14-450b-86ac-138d2acf5c12"
      unitRef="usd">149205000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjExM2JmMmE0MDAxMTQzNGE4OGFiZDQ1NzM4MzA0Y2Y2L3RhYmxlcmFuZ2U6MTEzYmYyYTQwMDExNDM0YTg4YWJkNDU3MzgzMDRjZjZfNS0xLTEtMS0zMDIyNw_00c268b2-ff06-4ba5-a064-2a9bbf163cd9"
      unitRef="usd">-1412000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjExM2JmMmE0MDAxMTQzNGE4OGFiZDQ1NzM4MzA0Y2Y2L3RhYmxlcmFuZ2U6MTEzYmYyYTQwMDExNDM0YTg4YWJkNDU3MzgzMDRjZjZfNi0xLTEtMS0zMDIyNw_c56aa8be-a66f-4f39-a162-16d80ede188a"
      unitRef="usd">147793000</us-gaap:Goodwill>
    <us-gaap:NumberOfReportingUnits
      contextRef="ieb03123b29b6449cbdd0a93fbcc9ad7a_D20200831-20200831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfMjYx_a71b8337-de59-42e4-b651-be3000543a4d"
      unitRef="reporting_unit">5</us-gaap:NumberOfReportingUnits>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="ieb03123b29b6449cbdd0a93fbcc9ad7a_D20200831-20200831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfMzQw_41497cdf-b643-467c-b6ef-d495cdc067f5"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfMTE5Ng_1afa8135-d7da-4e8c-85ff-ad832afaf004">&lt;div style="margin-top:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Identifiable Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortizable intangible assets consisted of the following as of January&#160;31, 2022 and October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.321%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,207&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;81,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks and trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Patents and other technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,504&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;224,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;142,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i502554b3cd864af7bf7d59eccf435fa3_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMi0xLTEtMS0zMDIyNw_a4843968-b387-4898-9040-ad52cbfb363b"
      unitRef="usd">145485000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i502554b3cd864af7bf7d59eccf435fa3_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMi0zLTEtMS0zMDIyNw_2697d648-e461-44a2-b582-5836e26f7bd2"
      unitRef="usd">83345000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i5776c46f54314b2ba5101330dcaef67b_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMi01LTEtMS0zMDIyNw_8c8f0f85-ff6f-4398-afa9-4e04e7cde420"
      unitRef="usd">146207000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i5776c46f54314b2ba5101330dcaef67b_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMi03LTEtMS0zMDIyNw_ae0a753a-3dc1-4d33-ad0c-a515542c1772"
      unitRef="usd">81086000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iaa9c08e8d87147109db335c4d1f9a62a_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMy0xLTEtMS0zMDIyNw_421647c5-0215-4ee5-a5c4-34034f1d2f5d"
      unitRef="usd">56213000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iaa9c08e8d87147109db335c4d1f9a62a_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMy0zLTEtMS0zMDIyNw_f761a0c9-27c9-4f01-929f-a3af0f4554a7"
      unitRef="usd">39998000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i0306a2ffb6e54e9a8b6f1e6e97e6f64a_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMy01LTEtMS0zMDIyNw_72310eb1-c325-4cfc-b90e-388af3ca407b"
      unitRef="usd">56437000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i0306a2ffb6e54e9a8b6f1e6e97e6f64a_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfMy03LTEtMS0zMDIyNw_727711b6-772d-44c2-be14-b727e817b5da"
      unitRef="usd">39589000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i999818e6b2ce4fcb919f7793ab403083_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNC0xLTEtMS0zMDIyNw_287a23eb-2bbf-495d-801b-22ee057e0519"
      unitRef="usd">22504000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i999818e6b2ce4fcb919f7793ab403083_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNC0zLTEtMS0zMDIyNw_f088f7b0-0f2d-481d-a8ab-f4c4729f92ab"
      unitRef="usd">22109000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i93a29bf736cf4e1a929306ea3d8065b3_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNC01LTEtMS0zMDIyNw_5a7cfd0b-0e07-44db-8dce-b8771684b3ed"
      unitRef="usd">22525000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i93a29bf736cf4e1a929306ea3d8065b3_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNC03LTEtMS0zMDIyNw_2dec5b41-c1f4-4a28-b2c7-e09b2a137c97"
      unitRef="usd">22084000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNi0xLTEtMS0zMDIyNw_7594aef0-53e4-4e3a-8e8e-0bf1702127b5"
      unitRef="usd">224202000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNi0zLTEtMS0zMDIyNw_abe2ea84-c02a-4c5a-b6db-032e84e0b813"
      unitRef="usd">145452000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNi01LTEtMS0zMDIyNw_fda0ded7-f678-430e-b62f-f39cfd86a565"
      unitRef="usd">225169000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjA3NGU4ZTk1ZTE2NzQ3M2I5NzExNzFiYmQ5ZmY2NGU2L3RhYmxlcmFuZ2U6MDc0ZThlOTVlMTY3NDczYjk3MTE3MWJiZDlmZjY0ZTZfNi03LTEtMS0zMDIyNw_db8816c7-f17d-41ee-ae29-86224f22f835"
      unitRef="usd">142759000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfODE2_23b8664b-c7cc-47e4-b444-7aa6a2c6f592"
      unitRef="usd">3000000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfODQ1_6ed2127d-3380-47df-8a97-f4aa8dee7ca7"
      unitRef="usd">3400000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RleHRyZWdpb246ZDUzYzY0Y2ZhNjE5NDJkMzkzNmFjODNjMjljMzM5MDhfMTIwNQ_4d935278-a19b-4d82-9593-08153568032c">&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimated remaining amortization expense, based on current intangible balances, for each of the fiscal years ending October 31, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Estimated&lt;br/&gt;Amortization Expense&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022 (remaining nine months)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,049&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,573&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,180&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfMS0xLTEtMS0zMDIyNw_7b6dfb9f-c59a-4b87-953d-2bea9f277784"
      unitRef="usd">9049000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfMi0xLTEtMS0zMDIyNw_fd741ca6-d76b-42b4-b656-8625a6ce6b77"
      unitRef="usd">11324000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfMy0xLTEtMS0zMDIyNw_93005703-f03c-4f85-89cd-4ea70fd75cad"
      unitRef="usd">10573000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfNC0xLTEtMS0zMDIyNw_f0d2d807-d07a-4444-b44f-e28ec021b120"
      unitRef="usd">9347000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfNS0xLTEtMS0zMDIyNw_0a61c1f3-594e-41c9-88c2-f914550fcc52"
      unitRef="usd">9277000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <nx:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfNi0xLTEtMS0zMDIyNw_f4e29bb5-e2ac-40e1-b2d6-dd48438820ab"
      unitRef="usd">29180000</nx:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180Ni9mcmFnOmQ1M2M2NGNmYTYxOTQyZDM5MzZhYzgzYzI5YzMzOTA4L3RhYmxlOjNhMWIxMWQyYWUzMzRmMzRiNGJiNmQ4NGE3YTA1Y2I1L3RhYmxlcmFuZ2U6M2ExYjExZDJhZTMzNGYzNGI0YmI2ZDg0YTdhMDVjYjVfNy0xLTEtMS0zMDIyNw_27f5e3d5-d541-4f90-b680-98b9d9c37b34"
      unitRef="usd">78750000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMzIzOA_65cd26db-bc99-48df-a49b-de8a75293d49">Debt and Finance Lease Obligations&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Long-term debt consisted of the following at January&#160;31, 2022 and October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.145%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;br/&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;October 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revolving Credit Facility&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease obligations and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unamortized deferred financing fees&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(521)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(597)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;77,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Current maturities of long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;836&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,691&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Revolving Credit Facility&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As more fully described in our Annual Report on Form 10-K for the fiscal year ended October&#160;31, 2021, on October 18, 2018, we amended and extended our prior credit facility by entering into a $325.0 million revolving credit facility (the &#x201c;Credit Facility&#x201d;), with Wells Fargo Bank, National Association, as Agent, Swingline Lender and Issuing Lender, and Bank of America, N.A. serving as Syndication Agent. The Credit Facility has a five-year term, maturing on October 18, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On December 28, 2021, we entered into a second amendment (the &#x201c;Amendment&#x201d;) of the Credit Facility. Pursuant to the Amendment, (a) the definition of &#x201c;Capital Lease&#x201d; was modified and clarified to provide an exclusion of certain agreed leases of the Company and its subsidiaries from the Credit Facility&#x2019;s financial covenants and other provisions and (b) secured overnight financing rate, interest rate mechanics and interest rate reference benchmark replacement provisions were implemented to effectuate the transition from LIBOR as a reference interest rate. We will, however, continue to use the One Month LIBOR Rate plus applicable margin for the Credit Facility until June of 2023 when One Month LIBOR will no longer be available.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Following the Amendment, interest payments are calculated, at our election and depending upon the Consolidated Leverage Ratio, at a Base Rate plus an applicable margin or at the same rate as One Month LIBOR for domestic borrowings, Eurocurrency Rate Loan, Transitioned RFR Loan or RFR Loan plus an applicable margin. In addition, we are subject to commitment fees for the unused portion of the Credit Facility. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The applicable margin and commitment fees are outlined in the following table:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:13pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.543%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.939%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pricing Level&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Consolidated Leverage Ratio&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Commitment Fee&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;LIBOR, Eurocurrency Rate Loans and Transitioned RFR Loans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Initial RFR Loans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Base Rate Loans&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;I&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less than or equal to 1.50 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.200%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.25%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.2826%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.25%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;II&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater than 1.50 to 1.00, but less than or equal to 2.25 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.225%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.50%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5326%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;III&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater than 2.25 to 1.00, but less than or equal to 3.00 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.250%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.75%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.7826%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.75%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;IV&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater than 3.00 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.300%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.0326%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.00%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the event of default, outstanding borrowings would accrue interest at the Default Rate, as defined, whereby the obligations will bear interest at a per annum rate equal to 2% above the total per annum rate otherwise applicable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Credit Facility provides for incremental revolving credit commitments for a minimum principal amount of $10.0&#160;million, up to an aggregate amount of $150.0&#160;million, subject to the lender's discretion to elect or decline the incremental increase. We can also borrow up to the lesser of $15.0&#160;million or the revolving credit commitment, as defined, under a Swingline feature of the Credit Facility.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Credit Facility contains a: (1) Consolidated Interest Coverage Ratio requirement whereby we must not permit the Consolidated Interest Coverage Ratio, as defined, to be less than 2.25 to 1.00, and (2) Consolidated Leverage Ratio requirement, whereby we must not permit the Consolidated Leverage Ratio, as defined, to be greater than 3.25 to 1.00.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition to maintaining these financial covenants, the Credit Facility also limits our ability to enter into certain business transactions, such as to incur indebtedness or liens, to acquire businesses or dispose of material assets, make restricted payments, pay dividends (limited to $20.0 million per year) and other transactions as further defined in the Credit Facility.  Some of these limitations, however, do not take effect so long as total leverage is less than or equal to 2.75 to 1.00 and available liquidity exceeds $25.0&#160;million. Substantially all of our domestic assets, with the exception of real property, are used as collateral for the Credit Agreement. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of January&#160;31, 2022, we ha&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;d $63.0 million of borrowings outstanding under the Credit Facility (reduced by unamortized debt issuance costs of $0.5 million), $4.5 million of outstanding letters of credit and $15.0 million outstanding primarily under finance leases and other debt. We had $257.5 million available for use under the 2018 Credit Facility at January&#160;31, 2022. Outstanding borrowings under the 2018 Credit Facility accrue interest at 1.36% per annum. Our weighted average borrowing rate for borrowings outstanding during the three months ended January&#160;31, 2022 and 2021 was 1.35% and 1.56%, respectively. We were in compliance with our debt covenants as of January&#160;31, 2022.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMzI1MQ_9187a77c-4700-47cb-86d1-043eda118fbc">Long-term debt consisted of the following at January&#160;31, 2022 and October&#160;31, 2021 (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.145%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;br/&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;October 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revolving Credit Facility&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease obligations and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unamortized deferred financing fees&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(521)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(597)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;77,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,940&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Current maturities of long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;836&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,691&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="ica5ebf179fa1421d9aa6076deb79817e_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfMS0xLTEtMS0zMDIyNw_b27cf240-7717-45ff-8d5f-2a89181d714b"
      unitRef="usd">63000000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="icbeae0e2e7fc49c8b62780fdcdc273f2_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfMS0zLTEtMS0zMDIyNw_4539006d-c898-4b39-85d3-77978c34303f"
      unitRef="usd">38000000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="i8149a3b735724ad7ac5c7db845d4a4b0_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNC0xLTEtMS0zMDIyNw_efd33e34-fbcd-4bf8-b6a8-49c79b7f9bd6"
      unitRef="usd">15048000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="ia06a2d2eb44b46d8a596c26f8b396465_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNC0zLTEtMS0zMDIyNw_241f551b-ba90-48eb-840c-dd572586f59b"
      unitRef="usd">15537000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNS0xLTEtMS0zMDIyNw_0dd953fd-c73e-4c67-9b89-23d3553ad2a2"
      unitRef="usd">521000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNS0zLTEtMS0zMDIyNw_1209fa17-67df-4fa2-9465-ea958314881a"
      unitRef="usd">597000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNi0xLTEtMS0zMDIyNw_0ea63f97-4c24-41e1-897d-879a82d0d4ae"
      unitRef="usd">77527000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNi0zLTEtMS0zMDIyNw_f8cd9998-e9c2-4965-bb48-daa6b0e97ee8"
      unitRef="usd">52940000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNy0xLTEtMS0zMDIyNw_92920697-a191-4d2a-a9a9-4b4b05cee941"
      unitRef="usd">836000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfNy0zLTEtMS0zMDIyNw_d0063322-7b8f-46d7-96fc-6a72c70bcc99"
      unitRef="usd">846000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfOC0xLTEtMS0zMDIyNw_e5775a92-4242-4df7-b107-02b013c07162"
      unitRef="usd">76691000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjAxMTkxN2RhZjliYTQ0MmQ5NGY0YzFhMGE2OTljMDJkL3RhYmxlcmFuZ2U6MDExOTE3ZGFmOWJhNDQyZDk0ZjRjMWEwYTY5OWMwMmRfOC0zLTEtMS0zMDIyNw_52b28693-425e-44cb-9c59-1ef4d7c59232"
      unitRef="usd">52094000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <nx:LineofCreditFacilityMaximumBorrowingCapacityCommittedAmount
      contextRef="i9773a59bf7c941689f616b682e39ee27_I20181018"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMzIx_800ebb40-3290-4327-8abb-2bd8d2173712"
      unitRef="usd">325000000</nx:LineofCreditFacilityMaximumBorrowingCapacityCommittedAmount>
    <nx:ScheduleOfApplicableMarginAndCommitmentFeesTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTY0OTI2NzQ0NzYxMw_cd2e85a3-f2b0-47cc-a4f5-a68e93052ac5">&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The applicable margin and commitment fees are outlined in the following table:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:13pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.110%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.543%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.939%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pricing Level&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Consolidated Leverage Ratio&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Commitment Fee&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;LIBOR, Eurocurrency Rate Loans and Transitioned RFR Loans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Initial RFR Loans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Base Rate Loans&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;I&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less than or equal to 1.50 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.200%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.25%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.2826%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.25%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;II&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater than 1.50 to 1.00, but less than or equal to 2.25 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.225%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.50%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5326%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;III&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater than 2.25 to 1.00, but less than or equal to 3.00 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.250%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.75%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.7826%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.75%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;IV&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater than 3.00 to 1.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.300%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.00%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.0326%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.00%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</nx:ScheduleOfApplicableMarginAndCommitmentFeesTableTextBlock>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="ica152801f86f42fa8fc68b385ab809aa_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMS00LTEtMS0zMDIyNw_f62d98cc-8e5f-4c74-a0bd-bba4dc18510d"
      unitRef="number">0.00200</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="ib508842699d94612be42696b196ad030_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMS02LTEtMS0zMzk5OQ_384ee9cd-1fc3-4f56-8691-79e412afb0d5"
      unitRef="number">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i2e41e0e8a1f644828abae475e93b489a_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMS02LTEtMS0zMzk5OQ_3f31fc36-198c-4489-854a-7e479dbf5abe"
      unitRef="number">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i1cf5a11d610b4315ba0315bd9c971ce3_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMS02LTEtMS0zMzk5OQ_4a117655-bf13-499f-8fba-1d3a41fa16a0"
      unitRef="number">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="icf4db118e07a460da1efce29be336691_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMS02LTEtMS0zMDIyNw_9d6e76b4-16df-45ff-b09d-42a7a3028dff"
      unitRef="number">0.012826</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i1e9bd40967064026a4961fd940324424_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMS04LTEtMS0zMDIyNw_eba8aaa7-4c5f-43b1-9a87-8c22f978bb43"
      unitRef="number">0.0025</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="ia7ab9a1aae7347378d61437a3a558551_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMi00LTEtMS0zMDIyNw_f44e903a-1e41-48f7-8774-d000bb04c181"
      unitRef="number">0.00225</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i0711b3d8e19249159220989ae13c0fa5_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMi02LTEtMS0zMzk5OQ_941d662b-48a1-47e6-996a-f6ec6b6eb21f"
      unitRef="number">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i4220fbceb84f467d9b8254651fb0322b_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMi02LTEtMS0zMzk5OQ_d21cd559-8878-430c-9f1a-69877da09f3d"
      unitRef="number">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i6dad9804ab894775b9abf0536ef24b2e_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMi02LTEtMS0zMzk5OQ_e5e59f4a-01e4-4a21-b9ab-7f681d645f35"
      unitRef="number">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i6e279784cbcf4cccab278fc6439bc61b_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMi02LTEtMS0zMDIyNw_2199e37d-5745-4c74-a882-f8355115ce54"
      unitRef="number">0.015326</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i1036bd95154643d49da231ae500406d9_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMi04LTEtMS0zMDIyNw_90d24883-1c55-4839-8315-b87d359fa48f"
      unitRef="number">0.0050</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="i2ad3e61af521408e8ecb3ac67ee9d9b5_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMy00LTEtMS0zMDIyNw_7bdda85e-49b2-4636-bf2c-1b558aeb4d95"
      unitRef="number">0.00250</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i14eedd04928d4a0e8ea0f7b2402d76e6_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMy02LTEtMS0zMzk5OQ_87c0ee35-47e3-4b72-827c-0eaf204e3974"
      unitRef="number">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i13bc10c765dc43358894975587d4d99f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMy02LTEtMS0zMzk5OQ_909cb073-46ee-47e2-b25e-f85620c6aa08"
      unitRef="number">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i17bd10fcad18424eb0bca5c1aed58b28_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMy02LTEtMS0zMzk5OQ_e2917479-53bd-4821-8346-b17139873fd3"
      unitRef="number">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="ia8e3dc7f18dc409f9bd1667531d9ecd0_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMy02LTEtMS0zMDIyNw_69af7893-f64b-460d-b838-0572ba1c1297"
      unitRef="number">0.017826</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i985711a691b34055854eca8082d1e2e0_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfMy04LTEtMS0zMDIyNw_82dbb67b-efd6-4a95-bd0e-29d145dd42eb"
      unitRef="number">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="i82915bb832694fc4b09a53500259dc66_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfNC00LTEtMS0zMDIyNw_3a3a396f-74f4-4863-85be-a5de8a34e8f5"
      unitRef="number">0.00300</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i94a3ef3544244a97a8b83c719997f199_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfNC02LTEtMS0zMzk5OQ_1f555d48-554a-49cc-a790-f280309abb0a"
      unitRef="number">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i3c036136b071431dbc38632e2a2ae45a_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfNC02LTEtMS0zMzk5OQ_e36ac4d7-a1cc-48d1-be83-0e1c28e8d5f9"
      unitRef="number">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i1d2c07ddce774ff781e56392040cae39_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfNC02LTEtMS0zMzk5OQ_ffb5a3d4-4b30-4dcf-ba6c-502397e05891"
      unitRef="number">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i0ef80d639dff45b481257add5be3ba3b_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfNC02LTEtMS0zMDIyNw_91eeb24e-7c5a-458d-9e56-c82102ce21b2"
      unitRef="number">0.020326</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i73131ace766e489c9cbaff93da9d31b6_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RhYmxlOjIxM2YwNTJlODkyZTQ3ZmU4ZDBkYWM1MjBhNTY1ZmExL3RhYmxlcmFuZ2U6MjEzZjA1MmU4OTJlNDdmZThkMGRhYzUyMGE1NjVmYTFfNC04LTEtMS0zMDIyNw_716ca497-7558-4d2b-bd1e-196642db3941"
      unitRef="number">0.0100</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <nx:DebtInstrumentDebtDefaultInterestAccrualRate
      contextRef="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTIxNA_5a89add5-067a-479b-8cab-67d063daf658"
      unitRef="number">0.02</nx:DebtInstrumentDebtDefaultInterestAccrualRate>
    <nx:MinimumIncrementalBorrowing
      contextRef="i0d6e968bd8604a6ba4b6579a44a9d295_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTM4Mw_f8bc4529-b26b-4eae-b9e8-3475a47588df"
      unitRef="usd">10000000</nx:MinimumIncrementalBorrowing>
    <nx:MaximumIncrementalBorrowing
      contextRef="i0d6e968bd8604a6ba4b6579a44a9d295_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTQxNg_548f0e9f-c31e-46ed-bf8c-abd829f901c8"
      unitRef="usd">150000000</nx:MaximumIncrementalBorrowing>
    <us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount
      contextRef="i6aa7bf5b4a1245e187820332ffc1f81b_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTU0MA_c7595560-e45f-405b-adc9-994b525e7e73"
      unitRef="usd">15000000</us-gaap:DebtInstrumentUnusedBorrowingCapacityAmount>
    <nx:DebtInstrumentRequiredCoverageRatio
      contextRef="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTgzMA_4095f626-95d2-4f98-9dca-00d5cbc126d0"
      unitRef="number">0.0225</nx:DebtInstrumentRequiredCoverageRatio>
    <nx:DebtInstrumentRequiredLeverageRatio
      contextRef="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMTk4Mg_36a46620-f6c4-42ed-aa02-7c7f50a1fb91"
      unitRef="number">0.0325</nx:DebtInstrumentRequiredLeverageRatio>
    <nx:DebtInstrumentLimitationonAnnualDividend
      contextRef="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjI4Nw_a010f3c6-ec0b-4f67-a802-e7073964042b"
      unitRef="usd">20000000</nx:DebtInstrumentLimitationonAnnualDividend>
    <nx:DebtInstrumentLeverageRatioThresholdforLimitationstoTakeEffect
      contextRef="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjQ3OA_8e529704-63b1-42ac-ada3-b29703b5e5ef"
      unitRef="number">2.75</nx:DebtInstrumentLeverageRatioThresholdforLimitationstoTakeEffect>
    <nx:DebtInstrumentLiquidityThresholdforLimitationstoTakeEffect
      contextRef="i9046cc2d3eaa4754a4dc0eb3c6c50e86_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjUyMQ_e7f89d84-75ab-4647-ba31-941ee71ccd2f"
      unitRef="usd">25000000</nx:DebtInstrumentLiquidityThresholdforLimitationstoTakeEffect>
    <us-gaap:LineOfCredit
      contextRef="ica5ebf179fa1421d9aa6076deb79817e_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjY3MQ_055d4ade-1f43-48ed-b2d1-433cf94e5e01"
      unitRef="usd">63000000</us-gaap:LineOfCredit>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjc4Mw_81f044d4-ebe2-46e5-848c-074bc934e95d"
      unitRef="usd">4500000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:OtherLongTermDebt
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjgyMw_54df44f4-1398-48b7-9815-aa0060d7fbdb"
      unitRef="usd">15000000</us-gaap:OtherLongTermDebt>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMjg5Mg_f8d14eb2-1239-4eac-b522-a155ace3f53e"
      unitRef="usd">257500000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i67f1adab85c048e39a95d2d620d6af77_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMzAyNA_46c253fb-942b-42f7-9bb5-ecdce41f559f"
      unitRef="number">0.0136</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateDuringPeriod
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMzE0NA_904c0b2a-64a2-490b-bf30-1a1e0b404802"
      unitRef="number">0.0135</us-gaap:DebtInstrumentInterestRateDuringPeriod>
    <us-gaap:DebtInstrumentInterestRateDuringPeriod
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY180OS9mcmFnOmM2ZmIxOTY1M2JkYjRjZjViMzk1MGY3NjhjOGM4YTRiL3RleHRyZWdpb246YzZmYjE5NjUzYmRiNGNmNWIzOTUwZjc2OGM4YzhhNGJfMzE1MQ_cd665237-1d16-4bd1-991b-525d7049bad0"
      unitRef="number">0.0156</us-gaap:DebtInstrumentInterestRateDuringPeriod>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfMTY1MQ_ee62df20-3cae-4f29-bcfc-c6e278c01414">Retirement Plans&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Pension Plan &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our non-contributory, single employer defined benefit pension plan covers certain of our employees in the U.S. The net periodic pension cost for this plan for the three months ended January&#160;31, 2022 and 2021 was as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(498)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(490)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of net loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net periodic pension benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(79)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(53)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:17pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During September 2021, we &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;contributed $0.5 million to fund our plan. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During fiscal&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2022&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; we do not expect to need to make a contribution to the pension plan to maintain targeted funding levels and meet minimum contribution requirements. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Other Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also have a supplemental benefit plan covering certain executive officers and key employees and a non-qualified deferred compensation plan covering members of the Board of Directors and certain key employees. As of January&#160;31, 2022 and October&#160;31, 2021, our liability under the supplemental benefit plan was approximat&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ely $2.9 million. As of January&#160;31, 2022 and October&#160;31, 2021, the liability associated with the deferred compensation plan was approximately $3.4&#160;million. We record the current portion of liabilities as&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;sociated with these plans under the caption &#x201c;Accrued Liabilities,&#x201d; and the long-term portion under the caption &#x201c;Other Liabilities&#x201d; in the accompanying condensed consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:ScheduleOfNetBenefitCostsTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfMTY1NQ_f8776614-fc37-4147-89a8-12766f0b98a8">The net periodic pension cost for this plan for the three months ended January&#160;31, 2022 and 2021 was as follows (in thousands): &lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(498)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(490)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of net loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net periodic pension benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(79)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(53)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfNetBenefitCostsTableTextBlock>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfMy01LTEtMS0zMDIyNw_aaea18d0-e24a-4b8a-ac3d-64fee742508e"
      unitRef="usd">216000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfMy03LTEtMS0zMDIyNw_c797f540-842a-49c6-a057-96a45a26cbf1"
      unitRef="usd">212000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNC01LTEtMS0zMDIyNw_7130bc4a-14a3-41e6-ac1d-1982fc8488bf"
      unitRef="usd">202000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNC03LTEtMS0zMDIyNw_05dba660-2e1e-4287-956b-3f29a7c2537d"
      unitRef="usd">189000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNS01LTEtMS0zMDIyNw_e10c72bd-84eb-42e7-b0e9-d9da60144f52"
      unitRef="usd">498000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNS03LTEtMS0zMDIyNw_838ceb85-6d2d-4bc5-ae35-f1b044871649"
      unitRef="usd">490000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNi01LTEtMS0zMDIyNw_5449deeb-d6fc-493c-95db-ad0bc18d5a3d"
      unitRef="usd">-1000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNi03LTEtMS0zMDIyNw_e1a5bac0-0060-4648-8bcc-c2f8e821c9b4"
      unitRef="usd">-36000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNy01LTEtMS0zMDIyNw_6ec2c4a9-4e38-4e12-ada6-75eea60e0797"
      unitRef="usd">-79000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RhYmxlOjFjMTUzOGUxMTExNDRiNmViZDdhOGJjYTZlNDQ4OGQ5L3RhYmxlcmFuZ2U6MWMxNTM4ZTExMTE0NGI2ZWJkN2E4YmNhNmU0NDg4ZDlfNy03LTEtMS0zMDIyNw_ea2efb88-8970-4716-b336-48116819eb88"
      unitRef="usd">-53000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="ie484ac799c1c46c3a132aef689a2e1b2_D20210801-20211031"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfODQ4_022d4845-a597-413d-97e8-b1edc91afd76"
      unitRef="usd">500000</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfMTI3Mw_1f473388-64ef-48e9-8c54-8f7a4a82e231"
      unitRef="usd">2900000</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfMTI3Mw_a90744c4-66d1-464a-847e-095332fbed27"
      unitRef="usd">2900000</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent>
    <us-gaap:DeferredCompensationLiabilityCurrentAndNoncurrent
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfMTM5NA_97cec4cd-0765-48c1-866a-6437251e4ac7"
      unitRef="usd">3400000</us-gaap:DeferredCompensationLiabilityCurrentAndNoncurrent>
    <us-gaap:DeferredCompensationLiabilityCurrentAndNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181NS9mcmFnOmZhMGY5NGI4MjFkMDRkYjg4NWRiMWM0N2Q1N2Q5NmQ3L3RleHRyZWdpb246ZmEwZjk0YjgyMWQwNGRiODg1ZGIxYzQ3ZDU3ZDk2ZDdfMTM5NA_a0934b03-9a45-4368-a979-de944d1ee350"
      unitRef="usd">3400000</us-gaap:DeferredCompensationLiabilityCurrentAndNoncurrent>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMjcwNw_cfb779bb-cdb3-4407-b8c2-9ce09d6c3326">Income Taxes &lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;To determine our income tax expense or benefit for interim periods, consistent with accounting standards, we apply the estimated annual effective income tax rate to year-to-date results, adjusted for any applicable discrete items. Our estimated annual effective tax rates from continuing operations for the three months ended January&#160;31, 2022 and 2021 were &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;25.3%&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; and &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;26.0%&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, respectively. The difference between our effective income tax rate and the U.S. federal statutory rate of 21% principally results from discrete tax items, U.S. state tax, non-U.S. tax rate differential and other permanent differences. The primary discrete items affecting the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;2022&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; effective rate were a charge of &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$0.5 million related to the vesting or exercise of equity-based compensation awards and a benefit of $0.3 million for the true-up of our acc&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ruals and related deferred taxes from prior year. The 2021 effective tax rate was primarily impacted by a discrete benefit of &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$0.5 million&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; related to the vesting or exercise of equity-based compensation awards and a charge of &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$0.8 million&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; for the true-up of our deferred taxes from prior year filings. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;January&#160;31, 2022&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, our liability for uncertain tax positions (UTP) of $1.4 million relates to certain U.S. federal and state tax items regarding the interpretation of tax laws and regulations, including a minimal amount of interest and penalties. We include all interest and penalties related to uncertain tax benefits within our income tax provision account.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; To the extent interest and penalties are not assessed with respect to uncertain tax positions or the uncertainty of deductions in the future, amounts accrued will be reduced and reflected as a reduction of the overall income tax provision. Our total unrecognized tax benefits, if recognized, would not materially affect our effective tax rate. We do not believe that the recorded amount of  unrecognized tax benefits will decrease significantly within the next twelve months. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We evaluate the likelihood of realization of our deferred tax assets by considering both positive and negative evidence.  We maintain a valuation allowance for certain state net operating losses which totaled $1.3 million as of January&#160;31, 2022&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; and October&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMzc0_abbebbb7-498c-497e-a6dd-e8d7b8773b08"
      unitRef="number">0.253</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMzgx_b593a87e-a754-46d2-9080-151e9bd49a63"
      unitRef="number">0.260</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfNDkx_55632fc3-ace0-43eb-8f78-1508103d7f55"
      unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <nx:EffectiveIncomeTaxRateReconciliationVestingOrExerciseOfShareBasedPaymentArrangementAmount
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfODQy_95bf6e6a-5558-4713-874c-c2cfa9e2429e"
      unitRef="usd">500000</nx:EffectiveIncomeTaxRateReconciliationVestingOrExerciseOfShareBasedPaymentArrangementAmount>
    <us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfOTMz_1898d018-58e3-4727-8efa-4068a017eed5"
      unitRef="usd">300000</us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes>
    <nx:EffectiveIncomeTaxRateReconciliationVestingOrExerciseOfShareBasedPaymentArrangementAmount
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMTA5NQ_684c081a-9e12-4704-8636-cc306a8b3471"
      unitRef="usd">500000</nx:EffectiveIncomeTaxRateReconciliationVestingOrExerciseOfShareBasedPaymentArrangementAmount>
    <us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMTY0OTI2NzQ0NjUzMQ_83c3e471-53d7-4c6e-a157-a9c9b5b4fa87"
      unitRef="usd">800000</us-gaap:IncomeTaxReconciliationPriorYearIncomeTaxes>
    <us-gaap:LiabilityForUncertainTaxPositionsNoncurrent
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMTI0Mg_3d990c72-8860-4dae-998e-212b6402a8fd"
      unitRef="usd">1400000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMTkwOQ_774b13cc-95a8-4179-b60f-143d88a6ccaf"
      unitRef="usd">1300000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY181OC9mcmFnOjI2MTNkODhmMWU0NDRjZTliOWI2M2IwMmIyM2JjYTJiL3RleHRyZWdpb246MjYxM2Q4OGYxZTQ0NGNlOWI5YjYzYjAyYjIzYmNhMmJfMTkwOQ_e5942bec-e0e3-419b-afcc-92cf7148c671"
      unitRef="usd">1300000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY182MS9mcmFnOjY5ZGNlZTc4NTFlMjRlNjA4M2U5NWNhZDRlNjZiZGNiL3RleHRyZWdpb246NjlkY2VlNzg1MWUyNGU2MDgzZTk1Y2FkNGU2NmJkY2JfMzI0OA_86a7c8dd-a902-4c48-9f32-79289e563a9c">Contingencies&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Remediation and Environmental Compliance Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under applicable state and federal laws, we may be responsible for, among other things, all or part of the costs required to remove or remediate wastes or hazardous substances at locations we, or our predecessors, have owned or operated. From time to time, we also have been alleged to be liable for all or part of the costs incurred to clean up third-party sites where there might have been an alleged improper disposal of hazardous substances. At present, we are not involved in any such matters.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;From time to time, we incur routine expenses and capital expenditures associated with compliance with existing environmental regulations, including control of air emissions and water discharges, and plant decommissioning costs. We have not incurred any material expenses or capital expenditures related to environmental matters during the past three fiscal years, and do not expect to incur a material amount of such costs in fiscal 2022. While we will continue to have future expenditures related to environmental matters, any such amounts are impossible to reasonably estimate at this time. Based upon our experience to date, we do not believe that our compliance with environmental requirements will have a material adverse effect on our operations, financial condition or cash flows.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Litigation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;From time to time, we, along with our subsidiaries, are involved in various litigation matters arising in the ordinary course of our business, including those arising from or related to contractual matters, commercial disputes, intellectual property, personal injury, environmental matters, product performance or warranties, product liability, insurance coverage and personnel and employment disputes. We regularly review with legal counsel the status of all ongoing proceedings, and we maintain insurance against these risks to the extent deemed prudent by our management and to the extent such insurance is available. However, there is no assurance that we will prevail in these matters or that our insurers will accept full coverage of these matters, and we could, in the future, incur judgments, enter into settlements of claims, or revise our expectations regarding the outcome or insurability of matters we face, which could materially impact our results of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have been and are currently party to multiple claims, some of which are in litigation, relating to alleged defects in a commercial sealant product that was manufactured and sold during the 2000&#x2019;s. While we believe that our product was not defective and that we would prevail in these commercial sealant product claims if taken to trial, the timing, ultimate resolution and potential impact of these claims is not currently determinable. Nevertheless, after taking into account all currently available information, including our defenses, the advice of our counsel, and the extent and currently-expected availability of our existing insurance coverage, we believe that the eventual outcome of these commercial sealant claims will not have a material adverse effect on our overall financial condition, results of operations or cash flows, and we have not recorded any accrual with regard to these claims.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY182NC9mcmFnOjY0NjU5ZGEzMGM3NDQ4ZDM5N2Q0NDg3OTUyNDZjZTE4L3RleHRyZWdpb246NjQ2NTlkYTMwYzc0NDhkMzk3ZDQ0ODc5NTI0NmNlMThfMjIzNw_c5a1b0d8-c214-4c82-b7bc-8966af204704">Fair Value Measurement of Assets and Liabilities&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy distinguishes between (1) market participant assumptions developed based on market data obtained from independent sources (observable inputs) and (2) an entity's own assumptions about market data developed based on the best information available in the circumstances (unobservable inputs). The fair value hierarchy consists of three broad levels, which gives the highest priority to Level 1 and the lowest priority to Level 3. The three levels of the fair value hierarchy are described below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:27pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.5pt"&gt;Level 1 - Unadjusted quoted prices in active markets that are accessible at the measurement date for identical, unrestricted assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:27pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.5pt"&gt;Level 2 - Inputs other than quoted prices included within Level 1 that are observable for the asset or liability either directly or indirectly including quoted prices for similar assets or liabilities in active markets; quoted prices for identical or similar assets or liabilities in markets that are not active; inputs other than quoted prices that are observable for the asset or liability (e.g., interest rates) and inputs that are derived principally from or corroborated by observable market data by correlation or other means.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:27pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.5pt"&gt;Level 3 - Inputs that are both significant to the fair value measurement and unobservable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Carrying amounts reported on the balance sheet for cash, cash equivalents, accounts receivable and accounts payable approximate fair value due to the short-term maturity of these instruments. Our outstanding debt is variable rate debt that re-&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;prices frequently, thereby limiting our exposure to significant change in interest rate risk. As a result, the fair value of our debt instrument approximates carrying value at January&#160;31, 2022, and October&#160;31, 2021 (Level 2 measurement).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our performance share awards are marked-to-market on a quarterly basis during a three-year vesting period based on market data (Level 2 measurement). For further information, refer to Note 9, &#x201c;Stock-Based Compensation - Performance Share Awards.&#x201d;&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMzY_8a314d30-d07e-4f96-ba4c-f6d1f4117a1a">Stock-Based Compensation&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have established and maintain an Omnibus Incentive Plan (2020 Plan) that provides for the granting of restricted stock awards, stock options, restricted stock units, performance share awards, performance restricted stock units, and other stock-based and cash-based awards. The 2020 Plan is administered by the Compensation and Management Development Committee of the Board of Directors.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The aggregate number of shares of common stock authorized for grant under the 2020 Plan is 3,139,895 as approved by shareholders. Any officer, key employee and/or non-employee director is eligible for awards under the 2020 Plan. We grant restricted stock units to non-employee directors on the first business day of each fiscal year. As approved by the Compensation &amp;amp; Management Development Committee of our Board of Directors annually, we grant a mix of restricted stock awards, restricted stock units, performance shares and/or performance restricted stock units to officers, management and key employees.  We also historically granted stock options to certain officers, directors and key employees. Occasionally, we may make additional grants to key employees at other times during the year. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Restricted Stock Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock awards are granted to key employees and officers annually, and typically cliff vest over a three-year period with service and continued employment as the only vesting criteria. The recipient of the restricted stock award is entitled to all of the rights of a shareholder, except that the award is nontransferable during the vesting period. The fair value of the restricted stock award is established on the grant date and then expensed over the vesting period resulting in an increase in additional paid-in-capital. Shares are generally issued from treasury stock at the time of grant.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of non-vested restricted stock awards activity during the three months ended January&#160;31, 2022 is presented below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.469%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Restricted Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted&#160;Average&lt;br/&gt;Grant Date Fair Value per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(84,200)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total weighted average grant-date fair value of restricted stock awards that vested during each of the three months ended January&#160;31, 2022 and 2021 &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;was $1.1 million and $0.9 million, respectively. As of January&#160;31, 2022, total unrecognized compensation cost related to unamortized restricted stock awards was $3.0 million. We expect to recognize this expense over the remaining weighted average vesting period of 2.4 years. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Historically, stock options have been awarded to key employees, officers and non-employee directors. In December 2017, the Compensation &amp;amp; Management Development Committee of the Board of Directors approved a change to the long-term incentive award program eliminating the grant of stock options and replacing this award with a grant of performance restricted stock units and performance shares as further described below. As a result, the final stock options were granted during the fiscal year ended October 31, 2017. Stock options typically vested ratably over a three-year period with service and continued employment as the vesting conditions. Our stock options may be exercised up to a maximum of ten years from the date of grant. The fair value of the stock options was determined on the grant date and expensed over the vesting period resulting in an increase in additional paid-in-capital. For employees who were nearing retirement-eligibility, we recognized stock option expense ratably over the shorter of the vesting period or the period from the grant-date to the retirement-eligibility date. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We use a Black-Scholes pricing model to estimate the fair value of stock options. A description of the methodology for the valuation assumptions was disclosed in our Annual Report on Form 10-K for the fiscal year ended October&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes our stock option activity for the three months ended January&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.590%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Stock Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average&lt;br/&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average&lt;br/&gt;Remaining Contractual&lt;br/&gt;Term&#160;(in&#160;years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&#160;(000s)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding at October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.01&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited/Expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Intrinsic value is the amount by which the market price of the common stock on the date of exercise exceeds the exercise price of the stock option. The total intrinsic value of stock options exercised during the three months ended January&#160;31, 2022 and 2021 was less than &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$0.1 million and $2.3 million, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock units may be awarded to key employees and officers from time to time, and annually to non-employee directors. The non-employee director restricted stock units vest immediately but are payable only upon the director's cessation of service unless an election is made by the non-employee director to settle and pay the award on an earlier specified date.  Restricted stock units awarded to employees and officers typically cliff vest after a three-year period with service and continued employment as the vesting conditions. Restricted stock units are not considered outstanding shares and do not have voting rights, although the holder does receive a cash payment equivalent to the dividend paid, on a one-for-one basis, on our outstanding common shares. Once the criteria is met, each restricted stock unit is payable to the holder in cash based on the market value of one share of our common stock. Accordingly, we record a liability for the restricted stock units on our balance sheet and recognize any changes in the market value during each reporting period as compensation expense.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three months ended January&#160;31, 2022 and&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; 2021, non-employee directors received 33,579 and 28,826 restricted stock units, respectively, at a grant date fair value of $22.54 per share and $18.79 per share, respectively, which vested immediately. As of January&#160;31, 2022, there were 21,774  non-vested restricted stock units, which were awarded in January 2020 to key employees at a weighted average grant date fair value of $17.08. During the three months ended January&#160;31, 2022 and &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;January&#160;31, 2021, &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;we paid $0.1&#160;million to settle vested restricted stock units.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance Share Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have awarded annual grants of performance shares to key employees and officers. Performance share awards vest with return on net assets (RONA) as the vesting condition and pay out 100% in cash, and are accounted for as liability. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The expected cash settlement of the performance share award is recorded as a liability and is being marked to market over the three-year term of the award and can fluctuate depending on the number of shares ultimately expected to vest. Depending on the achievement of the performance conditions, 0% to 200% of the awarded performance shares may ultimately vest.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes our performance share grants and the grant date fair value for the RONA performance metrics:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:69.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.407%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Grant Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Awarded&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Forfeited&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 5, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 2, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 9, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2021, 183,000 shares vested pursuant to the December 2018 grant, which were settled with a cash payment of $3.8 million. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Performance share awards are payable in cash based upon the number of performance shares ultimately earned, and are therefore not considered outstanding shares.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We award performance restricted stock units to key employees and officers. These awards cliff vest upon a three-year service period with the absolute total shareholder return of our common stock over this three-year term as the vesting criteria. The number of shares earned is variable depending on the metric achieved, and the settlement method is 100% in our common stock, with accrued dividends paid in cash at the time of vesting, assuming the shares had been outstanding throughout the performance period.    &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;To value the performance restricted stock units, we used a Monte Carlo simulation model to arrive at a grant-date fair value. This amount will be adjusted for forfeitures and expensed over the three-year term of the award with a credit to additional paid-in-capital. Depending on the achievement of the performance conditions, a minimum of 0% and a maximum of 150% of the awarded performance restricted stock units may vest. Specifically, the awards vest on a continuum with the following Absolute Total Shareholder Return (A-TSR) milestones: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.897%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Vesting Level&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Vesting Criteria&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Percentage of Award Vested&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR greater than or equal to 50%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;150%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR less than 50% and greater than or equal to 20%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR less than 20% and greater than or equal to -20%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 4&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR less than -20%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes our performance restricted stock unit grants and the grant date fair value for the A-TSR performance metric:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:68.490%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Grant Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Awarded&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Forfeited&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 5, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 2, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 9, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.06&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three months ended January&#160;31, 2022&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, 87,919 performance restricted stock units vested. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The performance restricted stock units are not considered outstanding shares, do not have voting rights, and are exclud&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ed from diluted weighted-average shares used to calculate earnings per share until the performance criteria is probable to result in the issuance of contingent shares. As of January&#160;31, 2022, we have de&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;emed 33,093 shares related to the December 2019 grant of performance restricted stock units as probable to vest. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:15pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes amounts expensed as selling, general and administrative expense related to restricted stock awards, stock options, restricted stock units, performance share awards and performance restricted stock units for the three months ended January&#160;31, 2022 and 2021  (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:71.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;302&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance share awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;204&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.5pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,442&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Treasury Shares&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We record treasury stock purchases under the cost method whereby the entire cost of the acquired stock is recorded as treasury stock. Shares are generally issued from treasury stock at the time of grant of restricted stock awards, upon the exercise of stock options, and upon the vesting of performance shares and performance restricted stock units. On the subsequent issuance of treasury shares, we record proceeds in excess of cost as an increase in additional paid in capital. A deficiency of such proceeds relative to costs would be applied to reduce paid-in-capital associated with prior issuances to the extent available, with the remainder recorded as a charge to retained earnings. There were no charges to retained earnings during the three months ended January&#160;31, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the treasury stock activity during the three months ended January&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning Balance as of November 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,998,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(84,400)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(87,919)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,823,656&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTE0_a1561db7-fb34-4858-b017-033a7bc0adfb"
      unitRef="shares">3139895</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMzI_c29c6605-11d3-4d08-a4f8-8c6a63809066">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMjU_63b43d2a-6d50-4ed1-8768-78f7a77d56c4">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of non-vested restricted stock awards activity during the three months ended January&#160;31, 2022 is presented below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.469%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Restricted Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted&#160;Average&lt;br/&gt;Grant Date Fair Value per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(84,200)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i630aa7293844417cacf6960da7dc963c_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfMS0xLTEtMS0zMDIyNw_9e145945-1eda-4f96-b79d-30128086bd28"
      unitRef="shares">216400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i630aa7293844417cacf6960da7dc963c_I20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfMS0zLTEtMS0zMDIyNw_07843c57-76f3-40ef-9213-2e5fb9d754c1"
      unitRef="usdPerShare">17.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfMi0xLTEtMS0zMDIyNw_47c67122-dc7d-4c31-9588-a15f8ff724a6"
      unitRef="shares">84400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfMi0zLTEtMS0zMDIyNw_73971495-b9f1-48f6-a911-f720a015b4a8"
      unitRef="usdPerShare">22.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfMy0xLTEtMS0zMDIyNw_0cf54e47-0a08-4524-909b-b7b236659027"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfMy0zLTEtMS0zMDIyNw_debb9e3c-1a46-483d-acff-d46ebc22a5ad"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfNC0xLTEtMS0zMDIyNw_34139bc6-3a4b-431f-be48-97d36af4e54f"
      unitRef="shares">84200</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfNC0zLTEtMS0zMDIyNw_6d999ec8-f8c2-450e-a885-0eaaeac89904"
      unitRef="usdPerShare">13.63</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ic3f6b08ebc034955b69013d8a3f940b8_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfNS0xLTEtMS0zMDIyNw_fb6e541e-4467-41f9-b611-02996f52e269"
      unitRef="shares">216600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ic3f6b08ebc034955b69013d8a3f940b8_I20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjI3M2M2NjgyYzY4OTRhNzJhYjNhNTAwOWU0NTY0YzczL3RhYmxlcmFuZ2U6MjczYzY2ODJjNjg5NGE3MmFiM2E1MDA5ZTQ1NjRjNzNfNS0zLTEtMS0zMDIyNw_8cb42b51-77dd-4c08-86f4-8f8f5e2a7b0e"
      unitRef="usdPerShare">20.75</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMjA4NA_a810d1fe-e082-40cd-a2fe-539fb4883cf5"
      unitRef="usd">1100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i9b48870c196f45ec8f83dc6c054b0c26_D20201101-20210131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMjA5MQ_b14865e1-a447-471e-81c8-e1bb09c3e151"
      unitRef="usd">900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="ic3f6b08ebc034955b69013d8a3f940b8_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMjIwNw_bdae7395-5b48-47b1-af16-6fc6c76ddc5f"
      unitRef="usd">3000000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMjMwMQ_1e821e0a-2558-41ad-971e-74b95b6217f6">P2Y4M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i9c6d34a6143742948247cef2f3806410_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxNjQ_16183306-33a2-492d-aab9-82ea316cf586">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMTk_ad16406b-7424-4b6e-b78a-1594cc52b9c3">&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes our stock option activity for the three months ended January&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.590%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Stock Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average&lt;br/&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average&lt;br/&gt;Remaining Contractual&lt;br/&gt;Term&#160;(in&#160;years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&#160;(000s)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding at October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.01&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited/Expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;215,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfMS0xLTEtMS0zMDIyNw_8923e8d4-10b4-4ac9-85e4-fe7336619ab0"
      unitRef="shares">218304</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfMS0zLTEtMS0zMDIyNw_9d031419-49c7-4766-8593-a35e369867bf"
      unitRef="usdPerShare">19.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfMi0xLTEtMS0zMDIyNw_e7825187-def9-4c24-82fa-78ae2bf18d90"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfMi0zLTEtMS0zMDIyNw_521cfaf4-849b-4d4a-a9f1-c41d6ab99b7f"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfMy0xLTEtMS0zMDIyNw_0679f6cb-c6be-4375-b231-6d003a15e74e"
      unitRef="shares">2750</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfMy0zLTEtMS0zMDIyNw_4d75a37c-b1c0-435f-a9b5-3b987ee72651"
      unitRef="usdPerShare">20.01</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNC0xLTEtMS0zMDIyNw_5df8566a-fb99-4761-a302-ef11fd4d0458"
      unitRef="shares">500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNC0zLTEtMS0zMDIyNw_fbe3a04d-70d1-4d45-93b1-916071e6e09c"
      unitRef="usdPerShare">18.22</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNS0xLTEtMS0zMDIyNw_f0032238-c854-474b-8627-62336067ed98"
      unitRef="shares">215054</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNS0zLTEtMS0zMDIyNw_12a4486c-8406-4981-bcf1-00f404897635"
      unitRef="usdPerShare">19.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNS01LTEtMS0zMDIyNw_dfc29e50-1e23-4dfa-a726-72c6e08504c7">P3Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNS03LTEtMS0zMDIyNw_d0f2412e-73d3-4b09-bd20-44d45739de93"
      unitRef="usd">520000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNi0xLTEtMS0zMDIyNw_d643dffa-e374-441f-a1d9-2f6258c49ccf"
      unitRef="shares">215054</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNi0zLTEtMS0zMDIyNw_234370c2-86cf-4d56-af82-69f4b6ecfb40"
      unitRef="usdPerShare">19.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNi01LTEtMS0zMDIyNw_e69bf569-22fe-4baa-9f94-9e37f5c09ba1">P3Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNi03LTEtMS0zMDIyNw_09dc1b4b-b290-4a4c-9d82-36a5b6694c7c"
      unitRef="usd">520000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNy0xLTEtMS0zMDIyNw_8811f2f6-bbf0-4cca-a5be-0533117a47ce"
      unitRef="shares">215054</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNy0zLTEtMS0zMDIyNw_0d9cf92f-c1fa-4e02-b902-870d0f470668"
      unitRef="usdPerShare">19.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNy01LTEtMS0zMDIyNw_17ed090d-3e3d-407a-bc7e-7c389e78a0d0">P3Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdjNzUyMDlmN2U5ZTRkNzA5YTBkMTNiYzhmMmI2Mzk3L3RhYmxlcmFuZ2U6N2M3NTIwOWY3ZTllNGQ3MDlhMGQxM2JjOGYyYjYzOTdfNy03LTEtMS0zMDIyNw_6d68f8ab-067a-4ae0-8bef-71e63f4fb985"
      unitRef="usd">520000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i9c6d34a6143742948247cef2f3806410_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMzk1Mg_4680dcfa-b0c0-4dbe-b684-15d17e4770c5"
      unitRef="usd">100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i8a29a85d4f3f46c8a5088301cdd771d8_D20201101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMzk1OQ_41e6a7f8-c093-49a9-9eb5-b1c96667cdf8"
      unitRef="usd">2300000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxNDI_050220db-9319-47d9-9195-ad42f4160e2b">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTI4MQ_2e9951ea-48ab-4444-b1d1-a2e1776de2d7"
      unitRef="shares">33579</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ic93fb73cd47a4d29a553b79d9c0ae25c_D20201101-20210131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTI4OA_a7176ea1-2217-4d28-ae00-4086fe966e61"
      unitRef="shares">28826</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTM1OQ_06f1348c-ba60-42ad-aaee-f8125be3a821"
      unitRef="usdPerShare">22.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ic93fb73cd47a4d29a553b79d9c0ae25c_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTM3Ng_8a973d26-a305-4fb6-bc3d-25a2f8db6bb3"
      unitRef="usdPerShare">18.79</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i7d6649ac51f34638afc3ce4638ef8f74_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTQ1MQ_90081577-a1f5-46c9-aa29-d5f0f57b97ca"
      unitRef="shares">21774</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTU4OQ_246157ba-d76b-4fed-9680-08d93343c1ab"
      unitRef="usdPerShare">17.08</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <nx:ShareBasedCompensationArrangementByShareBasedPaymentAwardCashPaidToSettleVestedInstruments
      contextRef="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNTYzMQ_cf047cdf-db22-4394-b008-da10091b2bf4"
      unitRef="usd">100000</nx:ShareBasedCompensationArrangementByShareBasedPaymentAwardCashPaidToSettleVestedInstruments>
    <nx:PerformanceSharesSettledinCash
      contextRef="iaa872e5b4774460fbc793bbefcd460c7_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNjAzOQ_f99c9bec-a2d2-49ad-9fa5-4efa46f62b0b"
      unitRef="number">1</nx:PerformanceSharesSettledinCash>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i09a556581b4a42f39d3a74c5e12e61c7_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNjM4MQ_0ee260b1-7d20-473d-8763-81ec2d5010a7"
      unitRef="number">0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ieb7ff9146e754801a3094f6d4dd91fa5_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNjM4Nw_dc313b23-d9ff-4882-9ae0-911e725c3459"
      unitRef="number">2</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceBasedUnitsVestedAndExpectedToVestTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMTQ_8a03b734-7c2e-4eb8-b947-aed0663e1729">&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes our performance share grants and the grant date fair value for the RONA performance metrics:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:69.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.407%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Grant Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Awarded&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Forfeited&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 5, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 2, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 9, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceBasedUnitsVestedAndExpectedToVestTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i7ffd4cbd2c9d40d2a342eb2bcc1d1857_D20191205-20191205"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNC0xLTEtMS0zMDIyNw_f3dd9bc1-1329-404f-a20e-bc45fb5f1b35"
      unitRef="shares">55900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <nx:ReturnOnNetAssets
      contextRef="i7ffd4cbd2c9d40d2a342eb2bcc1d1857_D20191205-20191205"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNC0zLTEtMS0zMDIyNw_973c533e-b209-43b4-aff7-8999b1af517e"
      unitRef="usdPerShare">19.40</nx:ReturnOnNetAssets>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="i7ffd4cbd2c9d40d2a342eb2bcc1d1857_D20191205-20191205"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNC01LTEtMS0zMDIyNw_f703b0e5-27b8-48ed-b6ba-f8122a9854d3"
      unitRef="shares">5300</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i5c98f7ca45c7442783c6d762cc38f801_D20201202-20201202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNS0xLTEtMS0zMDIyNw_83770fba-c7f2-4f1d-add4-026abb00fc5f"
      unitRef="shares">65300</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <nx:ReturnOnNetAssets
      contextRef="i5c98f7ca45c7442783c6d762cc38f801_D20201202-20201202"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNS0zLTEtMS0zMDIyNw_e982469a-bd93-4c4d-9395-cce493a69bdf"
      unitRef="usdPerShare">20.68</nx:ReturnOnNetAssets>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="i5c98f7ca45c7442783c6d762cc38f801_D20201202-20201202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNS01LTEtMS0zMDIyNw_6ca7bb05-05f7-4eb7-b271-b52f17afe8a9"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i3247060fa42844a0bec80e8018f5ff9f_D20211209-20211209"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNi0xLTEtMS0zMTcyNQ_a762de25-4dfd-4622-ae7d-b3e0c79cecb4"
      unitRef="shares">80900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <nx:ReturnOnNetAssets
      contextRef="i3247060fa42844a0bec80e8018f5ff9f_D20211209-20211209"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNi0zLTEtMS0zMTcyNQ_9df11400-9b58-459b-9d17-2af4fba5e888"
      unitRef="usdPerShare">22.54</nx:ReturnOnNetAssets>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="i3247060fa42844a0bec80e8018f5ff9f_D20211209-20211209"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjdlZjMxMDhkMWQ1MTQ5OTBhN2U3NzVhMjBkNjFkZGNmL3RhYmxlcmFuZ2U6N2VmMzEwOGQxZDUxNDk5MGE3ZTc3NWEyMGQ2MWRkY2ZfNi01LTEtMS0zMTcyNQ_bcf26c05-3e72-4ded-941b-cb9c5cb0674b"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i2fad3ce3463c40a8ad8eb5eefa159c12_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxNDk_6109c4eb-bd58-4ed4-8633-1099bf80df4d">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <nx:PerformanceRestrictedStockUnitsSettledInCash
      contextRef="i2fad3ce3463c40a8ad8eb5eefa159c12_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfNzY2NQ_99e1f294-6c5d-4156-b656-8517bf25136e"
      unitRef="number">1</nx:PerformanceRestrictedStockUnitsSettledInCash>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i49167b96e89246019f5c30b8595b6426_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfODE2OQ_9e8dc1a8-bc36-488e-bebe-8c4d72617c0c"
      unitRef="number">0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i41f2bf01880644ab817456f07725d82d_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfODE4OQ_30ef26d1-d627-4208-850f-b9354cf272c8"
      unitRef="number">1.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <nx:ScheduleofPerformanceRestrictedStockVestingConditionsTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMDI_8556f5c9-2b0a-4650-b085-ec124555c600">Specifically, the awards vest on a continuum with the following Absolute Total Shareholder Return (A-TSR) milestones: &lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.897%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Vesting Level&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Vesting Criteria&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Percentage of Award Vested&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR greater than or equal to 50%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;150%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR less than 50% and greater than or equal to 20%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR less than 20% and greater than or equal to -20%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 4&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;A-TSR less than -20%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</nx:ScheduleofPerformanceRestrictedStockVestingConditionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="if26a573569984c568340fa0a80864de4_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjg4YTVjYTk5YjkwNzRkNWNhMThmNmM2OTRkMWY4MTNhL3RhYmxlcmFuZ2U6ODhhNWNhOTliOTA3NGQ1Y2ExOGY2YzY5NGQxZjgxM2FfMS00LTEtMS0zMDIyNw_96303423-a548-4398-bdc3-0976222a2eb0"
      unitRef="number">1.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ib66c4257816c4112b35d2a367a76c7c1_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjg4YTVjYTk5YjkwNzRkNWNhMThmNmM2OTRkMWY4MTNhL3RhYmxlcmFuZ2U6ODhhNWNhOTliOTA3NGQ1Y2ExOGY2YzY5NGQxZjgxM2FfMi00LTEtMS0zMDIyNw_e7fea065-2baf-4517-a701-8e29414bb70c"
      unitRef="number">1</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i5ae873dd3ee141a58da0bf3d523f638f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjg4YTVjYTk5YjkwNzRkNWNhMThmNmM2OTRkMWY4MTNhL3RhYmxlcmFuZ2U6ODhhNWNhOTliOTA3NGQ1Y2ExOGY2YzY5NGQxZjgxM2FfMy00LTEtMS0zMDIyNw_23b7a512-84ff-4266-9bf0-edc706cf8e45"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ifb16fd4d065d427a9a37fbc49eceba3a_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjg4YTVjYTk5YjkwNzRkNWNhMThmNmM2OTRkMWY4MTNhL3RhYmxlcmFuZ2U6ODhhNWNhOTliOTA3NGQ1Y2ExOGY2YzY5NGQxZjgxM2FfNC00LTEtMS0zMDIyNw_6b0de9d4-707c-4e66-a649-ec8609e55c8e"
      unitRef="number">0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <nx:PerformanceRestrictedStockUnitsbyGrantTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxNTc_38c380ee-c3bd-4f9d-b820-076394c55cd4">&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:68.490%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Grant Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Awarded&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Forfeited&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 5, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 2, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 9, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.06&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</nx:PerformanceRestrictedStockUnitsbyGrantTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i09d6aeee4b3846ba8b74076dbba6cfa8_D20191205-20191205"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfMy0yLTEtMS0zMDIyNw_0f020bb0-aedc-4a89-86b6-399f3cbf5a2b"
      unitRef="shares">35000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i09d6aeee4b3846ba8b74076dbba6cfa8_D20191205-20191205"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfMy00LTEtMS0zMDIyNw_757acb1c-5a2a-42a0-ba36-aad38af7d5f3"
      unitRef="usdPerShare">19.40</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="i09d6aeee4b3846ba8b74076dbba6cfa8_D20191205-20191205"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfMy02LTEtMS0zMDIyNw_69459f07-25f0-4ab1-937c-3ba65051800c"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i1d82c50dc4d6476eae0c78e54f73f9df_D20201202-20201202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfNC0yLTEtMS0zMDIyNw_a747e613-131d-49f4-b170-54f422a9d0c6"
      unitRef="shares">38400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i1d82c50dc4d6476eae0c78e54f73f9df_D20201202-20201202"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfNC00LTEtMS0zMDIyNw_c0d3fe14-eb67-4f24-a5a4-daa2ac3c3935"
      unitRef="usdPerShare">20.68</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="i1d82c50dc4d6476eae0c78e54f73f9df_D20201202-20201202"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfNC02LTEtMS0zMDIyNw_626d38ac-8647-4957-8358-bc059dfbbe36"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="i635bb18a83624aaba16e9051622b3c67_D20211209-20211209"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfNS0yLTEtMS0zMTY3OQ_f151ba17-e3cd-4d99-b8ea-acb1e5f65661"
      unitRef="shares">50900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i635bb18a83624aaba16e9051622b3c67_D20211209-20211209"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfNS00LTEtMS0zMTY4MQ_0ec153de-080d-43a6-b9c6-7e5ed1c4dc71"
      unitRef="usdPerShare">21.06</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="i635bb18a83624aaba16e9051622b3c67_D20211209-20211209"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjVhMDQ2YmQ0MmVkMDQ3NWRhZTA0ODA4ZThjYzRiNTg3L3RhYmxlcmFuZ2U6NWEwNDZiZDQyZWQwNDc1ZGFlMDQ4MDhlOGNjNGI1ODdfNS02LTEtMS0zMTY4Mw_4344aa7a-c219-4a4f-978c-1b300c9df32a"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
      contextRef="i2fad3ce3463c40a8ad8eb5eefa159c12_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxMjQ_20e78c27-8e10-46a4-8fd3-bb5e9a10c9df"
      unitRef="shares">87919</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="i4760f2e404194560996b1e931348f996_I20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfOTEyNQ_cbc9e8c6-7a54-4264-83ae-bc712058d0c8"
      unitRef="shares">33093</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTA5OTUxMTY0MDc1OA_f4192902-8233-4cdf-bff3-bb1663d2c479">&lt;div style="margin-top:15pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes amounts expensed as selling, general and administrative expense related to restricted stock awards, stock options, restricted stock units, performance share awards and performance restricted stock units for the three months ended January&#160;31, 2022 and 2021  (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:71.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;302&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance share awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;204&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.5pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,442&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfMy0xLTEtMS0zMzMwNA_b56d5bb5-a697-4d2e-8f77-a042d0496dc9"
      unitRef="usd">348</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9b48870c196f45ec8f83dc6c054b0c26_D20201101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfMy0zLTEtMS0zMzMwNA_974c6822-75f5-42ce-b449-8eeacd18deee"
      unitRef="usd">302</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9c6d34a6143742948247cef2f3806410_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNC0xLTEtMS0zMzMwNA_115b5b17-5b6d-4627-8b5b-56f359218e26"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i8a29a85d4f3f46c8a5088301cdd771d8_D20201101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNC0zLTEtMS0zMzMwNA_6c2fee25-e531-45e3-9f76-030349a3407a"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia777013b383040eb8d8f7bcd26535829_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNS0xLTEtMS0zMzMwNA_5fe64914-16aa-4280-8d38-7f7181e0a914"
      unitRef="usd">994</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ic93fb73cd47a4d29a553b79d9c0ae25c_D20201101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNS0zLTEtMS0zMzMwNA_641bfa35-15fa-464e-85cc-de8b009c31fd"
      unitRef="usd">1284</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="iaa872e5b4774460fbc793bbefcd460c7_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNi0xLTEtMS0zMzMwNA_4d333927-ac94-4992-92a3-aca4066c6c5e"
      unitRef="usd">1340</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9b7d101d7f9f44d3b51ca3c111058039_D20201101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNi0zLTEtMS0zMzMwNA_d31e4e9f-d519-47c6-b759-29ecdf0f446d"
      unitRef="usd">2685</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i2fad3ce3463c40a8ad8eb5eefa159c12_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNy0xLTEtMS0zMzMwNA_010b2aab-affc-48bc-b137-083284640c15"
      unitRef="usd">204</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="id5fe2c3b26cc41cdb45c6d99fbe2c455_D20201101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfNy0zLTEtMS0zMzMwNA_89ec5359-53e5-48ce-8fe4-0d808167e555"
      unitRef="usd">171</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfOC0xLTEtMS0zMzMwNA_cd58222e-895c-42b5-81f6-53a84579d8dd"
      unitRef="usd">2886</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjRiMjgyYzBkNmY5ZjQzMTFhN2EwNWMyYmRhZDNjZjgwL3RhYmxlcmFuZ2U6NGIyODJjMGQ2ZjlmNDMxMWE3YTA1YzJiZGFkM2NmODBfOC0zLTEtMS0zMzMwNA_dfc6f7e3-38ac-4814-a72f-495c0af50401"
      unitRef="usd">4442</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfTreasuryStockByClassTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RleHRyZWdpb246MDQ4M2Y3ODBjYTBkNDE4ODk3MmMwYzQxMzFiNTU0NzhfMTAxNjc_1d1b28dd-e4e7-43e6-bcd2-f89d6cff2d8a">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the treasury stock activity during the three months ended January&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning Balance as of November 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,998,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(84,400)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(87,919)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,823,656&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfTreasuryStockByClassTextBlock>
    <us-gaap:TreasuryStockShares
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjQwZDJjYzc1YTk3NTQ3NmQ4YjJjMDMyYjU5NjQwODIyL3RhYmxlcmFuZ2U6NDBkMmNjNzVhOTc1NDc2ZDhiMmMwMzJiNTk2NDA4MjJfMi0xLTEtMS0zMDIyNw_47946b6b-ebea-4c4d-bdc0-03d6035daf61"
      unitRef="shares">3998725</us-gaap:TreasuryStockShares>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjQwZDJjYzc1YTk3NTQ3NmQ4YjJjMDMyYjU5NjQwODIyL3RhYmxlcmFuZ2U6NDBkMmNjNzVhOTc1NDc2ZDhiMmMwMzJiNTk2NDA4MjJfMy0xLTEtMS0zMDIyNw_742a503a-d9c2-4bda-80d7-569718a2a88c"
      unitRef="shares">84400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="iaa872e5b4774460fbc793bbefcd460c7_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjQwZDJjYzc1YTk3NTQ3NmQ4YjJjMDMyYjU5NjQwODIyL3RhYmxlcmFuZ2U6NDBkMmNjNzVhOTc1NDc2ZDhiMmMwMzJiNTk2NDA4MjJfNC0xLTEtMS0zMDIyNw_84a3dd9c-20c5-42ff-8f4a-f8098a3d2a0d"
      unitRef="shares">87919</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i9c6d34a6143742948247cef2f3806410_D20211101-20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjQwZDJjYzc1YTk3NTQ3NmQ4YjJjMDMyYjU5NjQwODIyL3RhYmxlcmFuZ2U6NDBkMmNjNzVhOTc1NDc2ZDhiMmMwMzJiNTk2NDA4MjJfNS0xLTEtMS0zMDIyNw_51089309-e56e-45d3-83f3-ca8eec06f738"
      unitRef="shares">2750</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:TreasuryStockShares
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183MC9mcmFnOjA0ODNmNzgwY2EwZDQxODg5NzJjMGM0MTMxYjU1NDc4L3RhYmxlOjQwZDJjYzc1YTk3NTQ3NmQ4YjJjMDMyYjU5NjQwODIyL3RhYmxlcmFuZ2U6NDBkMmNjNzVhOTc1NDc2ZDhiMmMwMzJiNTk2NDA4MjJfNy0xLTEtMS0zMDIyNw_96cfedb6-8eea-4e76-8a79-b6a19eb81e04"
      unitRef="shares">3823656</us-gaap:TreasuryStockShares>
    <us-gaap:ScheduleOfOtherNonoperatingIncomeExpenseTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RleHRyZWdpb246NjZiN2NkZmVmYmJiNGY2OWEwM2M4NDdjYTM5NjM3ZDdfMTYz_2f5dec75-682e-459b-ae70-e27dd8d1bb81">Other, net&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other, net on the condensed consolidated statements of income consisted of the following for the three months ended January&#160;31, 2022 and 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency transaction losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(78)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pension service benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;295&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(215)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfOtherNonoperatingIncomeExpenseTableTextBlock>
    <us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RleHRyZWdpb246NjZiN2NkZmVmYmJiNGY2OWEwM2M4NDdjYTM5NjM3ZDdfMTY3_f8281266-c123-4c4b-9581-0190de41e332">Other, net&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other, net on the condensed consolidated statements of income consisted of the following for the three months ended January&#160;31, 2022 and 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency transaction losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(78)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pension service benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;295&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(215)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfMy01LTEtMS0zMDIyNw_ac4124c4-e30f-417c-b059-68fe19d59370"
      unitRef="usd">-41000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfMy03LTEtMS0zMDIyNw_d013d715-472f-4cdd-8af4-f18a812f98af"
      unitRef="usd">-78000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <nx:PensionServiceBenefit
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfNS01LTEtMS0zMDIyNw_573d86ac-858b-46ff-aa6c-7320f4df0f51"
      unitRef="usd">295000</nx:PensionServiceBenefit>
    <nx:PensionServiceBenefit
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfNS03LTEtMS0zMDIyNw_a63bffa6-865c-4121-906f-1651294eea41"
      unitRef="usd">265000</nx:PensionServiceBenefit>
    <us-gaap:InvestmentIncomeInterest
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfNi01LTEtMS0zMDIyNw_934dff6e-b018-4c01-b43e-9fe23f043ef4"
      unitRef="usd">15000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfNi03LTEtMS0zMDIyNw_43934985-8e11-4cc5-82f6-59f3899371f8"
      unitRef="usd">3000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:OtherNonrecurringIncomeExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfNy01LTEtMS0zMDIyNw_e499178c-84b1-41db-9d40-95857759cf39"
      unitRef="usd">215000</us-gaap:OtherNonrecurringIncomeExpense>
    <us-gaap:OtherNonrecurringIncomeExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfNy03LTEtMS0zMDIyNw_b8e53285-f4dd-49ea-a0c6-a8c1bf7500d1"
      unitRef="usd">-2000</us-gaap:OtherNonrecurringIncomeExpense>
    <us-gaap:OtherNonoperatingGainsLosses
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfOC01LTEtMS0zMDIyNw_7415b7c2-580f-42d1-9e16-01258a7bba19"
      unitRef="usd">54000</us-gaap:OtherNonoperatingGainsLosses>
    <us-gaap:OtherNonoperatingGainsLosses
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183Ni9mcmFnOjY2YjdjZGZlZmJiYjRmNjlhMDNjODQ3Y2EzOTYzN2Q3L3RhYmxlOjViMmQ1ZjRiYmY5ZjQ4ODhiMWZjMDA1MGQ3MmY4MDgxL3RhYmxlcmFuZ2U6NWIyZDVmNGJiZjlmNDg4OGIxZmMwMDUwZDcyZjgwODFfOC03LTEtMS0zMDIyNw_7bb3c8e7-306c-408c-b124-7ef5ab16b928"
      unitRef="usd">192000</us-gaap:OtherNonoperatingGainsLosses>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfMzA4MQ_cdc43e2d-f2ca-474f-a95b-8e20af59b1e8">Segment Information&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We present three reportable business segments (1) NA Fenestration, comprising three operating segments primarily focused on the fenestration market in North America including vinyl profiles, insulating glass spacers, screens &amp;amp; other fenestration components; (2) EU Fenestration, comprising our U.K.-based vinyl extrusion business, manufacturing vinyl profiles &amp;amp; conservatories, and the European insulating glass business manufacturing insulating glass spacers; and (3) NA Cabinet Components, comprising our cabinet door and components operations. We maintain an Unallocated Corporate &amp;amp; Other  which includes transaction expenses, stock-based compensation, long-term incentive awards based on the performance of our common stock and other factors, certain severance, legal, and other costs not deemed to be allocable to all segments, depreciation of corporate assets, interest expense, other, net, income taxes and inter-segment eliminations, and executive incentive compensation and medical expense fluctuations relative to planned costs as determined during the annual planning process. Other general and administrative costs associated with the corporate office are allocated to the reportable segments, based upon a relative measure of profitability in order to more accurately reflect each reportable business segment's administrative costs. We allocate corporate expenses to businesses acquired mid-year from the date of acquisition. The accounting polic&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ies of our operating segments are the same as those used to prepare the accompanying condensed consolidated financial statements. Corporate general and administrative expense allocated during the three month period ended January&#160;31, 2022 was $5.8&#160;million, and $5.2&#160;million for the comparable prior year period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ASC Topic 280-10-50, &#x201c;Segment Reporting&#x201d; (ASC 280) permits aggregation of operating segments based on factors including, but not limited to: (1) similar nature of products serving the building products industry, primarily the fenestration business; (2) similar production processes, although there are some differences in the amount of automation amongst operating plants; (3) similar types or classes of customers, namely the primary OEMs; (4) similar distribution methods for product delivery, although the extent of the use of third-party distributors will vary amongst the businesses; (5) similar regulatory environment; and (6) converging long-term economic similarities. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;margin-top:9pt;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Segment information for the three months ended January&#160;31, 2022 and 2021, and total assets as of January&#160;31, 2022 and October&#160;31, 2021 are summarized in the following table (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.081%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.015%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;EU Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Cabinet Comp.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Unallocated Corp. &amp;amp; Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267,040&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,257&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,453)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,387)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,073&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,054)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;230,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,542)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;As of  January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;282,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;229,515&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;718,272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;As of October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;236,755&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;717,323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the change in the carrying amount of goodwill by reportable business segment for the three months ended January&#160;31, 2022 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.992%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.027%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.032%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;EU Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Cabinet Comp.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Unallocated Corp. &amp;amp; Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance as of October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;149,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency translation adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,412)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,412)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#bfe4ff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance as of January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,934&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For further details of Goodwill, see Note 3, &#x201c;Goodwill &amp;amp; Intangible Assets&#x201d;, located herewith.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We did not allocate non-operating loss or income tax benefit to the reportable segments. The following table reconciles operating income as reported above to net income for the three months ended January&#160;31, 2022 and 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(523)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(751)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,418)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,424)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfNDA_e7849096-1758-4392-8d29-4441463dbb0f"
      unitRef="segment">3</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfOperatingSegments
      contextRef="i7d3a92b483e74a47ad95945d3355d536_D20211101-20220131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfMTA0_074e1561-90ae-429b-9f55-b20e17f339f9"
      unitRef="segment">3</us-gaap:NumberOfOperatingSegments>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfMTcxNA_e1664f78-8ad0-4756-a9d9-10ef9be4262e"
      unitRef="usd">5800000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfMTc0Mw_0624068e-23e4-4b2f-90ed-0fbdf96e4e51"
      unitRef="usd">5200000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfMzA4Mw_0d219ff0-2c05-4af6-9029-a7eaa1c7a3a0">&lt;div style="margin-bottom:10pt;margin-top:9pt;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Segment information for the three months ended January&#160;31, 2022 and 2021, and total assets as of January&#160;31, 2022 and October&#160;31, 2021 are summarized in the following table (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.081%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.015%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;EU Fenestration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;NA Cabinet Comp.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Unallocated Corp. &amp;amp; Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,914&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267,040&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,257&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,453)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,387)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,073&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,054)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;230,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,270&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,542)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;As of  January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;282,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;229,515&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;179,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;718,272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;As of October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;236,755&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;717,323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTItMS0xLTEtMzAyMjc_e20abda3-4797-4d9c-b668-46534a603020"
      unitRef="usd">146631000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTItMy0xLTEtMzAyMjc_a770aa3f-96d0-4084-9bb5-91745c48833a"
      unitRef="usd">58914000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTItNS0xLTEtMzAyMjc_d6cc0913-fc53-46fb-9ef7-b11b076b152a"
      unitRef="usd">62353000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTItNy0xLTEtMzAyMjc_bc828792-cbdc-41db-a34e-3e4d9740d361"
      unitRef="usd">-858000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTItOS0xLTEtMzAyMjc_2f6e7e5a-9b92-4d22-9b39-7087d9cabd95"
      unitRef="usd">267040000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTMtMS0xLTEtMzAyMjc_331098d7-ba32-4f75-910c-5eac794fd85f"
      unitRef="usd">4139000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTMtMy0xLTEtMzAyMjc_b54d882b-8010-4258-b277-e3d22f88cb59"
      unitRef="usd">2569000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTMtNS0xLTEtMzAyMjc_cabb82fc-b67b-4a5d-a28f-e31abb5c2d33"
      unitRef="usd">3463000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTMtNy0xLTEtMzAyMjc_8a18bebc-9c7b-4ef9-acd4-f9d14e857b19"
      unitRef="usd">86000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTMtOS0xLTEtMzAyMjc_0be3947a-a164-4ff0-a059-5d010d27f340"
      unitRef="usd">10257000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTQtMS0xLTEtMzAyMjc_2d7aecef-3733-4dca-b9f1-55c212c3164d"
      unitRef="usd">12151000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTQtMy0xLTEtMzAyMjc_4468adb6-e472-4dc4-bd7c-0f5aeffe08c6"
      unitRef="usd">7815000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTQtNS0xLTEtMzAyMjc_566db515-90d3-4b4d-b1c9-310543a597e9"
      unitRef="usd">-1453000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTQtNy0xLTEtMzAyMjc_319a21c9-3f54-4eef-bffb-1ab8c98a4f0c"
      unitRef="usd">-4387000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTQtOS0xLTEtMzAyMjc_05217ae8-9572-44e5-98df-bb9cb2ba7247"
      unitRef="usd">14126000</us-gaap:OperatingIncomeLoss>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTUtMS0xLTEtMzAyMjc_6f745c0e-6464-49ea-a5c0-2edb19426f06"
      unitRef="usd">5305000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTUtMy0xLTEtMzAyMjc_4307c60c-49e9-421c-b88b-ec6c08408324"
      unitRef="usd">954000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTUtNS0xLTEtMzAyMjc_cc504ed6-c365-423c-b484-6314aeb6e565"
      unitRef="usd">1073000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTUtNy0xLTEtMzAyMjc_cd5c3e3b-4d72-4b18-bd85-e3455d61f5df"
      unitRef="usd">38000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTUtOS0xLTEtMzAyMjc_71aefb43-3b66-4df1-bf53-28b0f41cef7a"
      unitRef="usd">7370000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTctMS0xLTEtMzAyMjc_a9aa4e84-a25f-409f-adc9-67bd509ac0a2"
      unitRef="usd">128116000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTctMy0xLTEtMzAyMjc_861b2bd5-092b-4f5e-a509-881775e1e4c4"
      unitRef="usd">49091000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTctNS0xLTEtMzAyMjc_a9dfa57b-25c0-47cd-a7dc-340021b31a90"
      unitRef="usd">53994000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTctNy0xLTEtMzAyMjc_93975193-ff6f-454d-a446-05e9e3e43ffb"
      unitRef="usd">-1054000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTctOS0xLTEtMzAyMjc_a1a13f9a-144d-4331-b6de-7c52b7538dcc"
      unitRef="usd">230147000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtMS0xLTEtMzAyMjc_70245a69-d5e9-4732-a7af-1e9993b71575"
      unitRef="usd">5111000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtMS0xLTEtMzAyMjc_c0869176-2bbc-40a7-9faa-5836ecd04091"
      unitRef="usd">5111000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtMy0xLTEtMzAyMjc_3db5a572-93e8-456b-943c-649af1a4dfc8"
      unitRef="usd">2518000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtMy0xLTEtMzAyMjc_91e9a302-56e4-43a1-a78d-db2f51c5bcd5"
      unitRef="usd">2518000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtNS0xLTEtMzAyMjc_cc22c8ad-45ec-48e5-b16d-75938cb1028c"
      unitRef="usd">3270000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtNS0xLTEtMzAyMjc_d25493eb-4349-4281-af2e-47bad9277822"
      unitRef="usd">3270000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtNy0xLTEtMzAyMjc_284b1999-c9c2-4046-a817-db1bde6f64b4"
      unitRef="usd">116000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtNy0xLTEtMzAyMjc_d5298d64-a1d5-4dbb-8c49-ee94916dd741"
      unitRef="usd">116000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtOS0xLTEtMzAyMjc_55fb8526-6b9a-445b-8f93-3a594187c415"
      unitRef="usd">11015000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTgtOS0xLTEtMzAyMjc_92be43fb-ff26-4e7a-8767-7c9d4140d8a1"
      unitRef="usd">11015000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTktMS0xLTEtMzAyMjc_71121ca3-b8b6-4484-9801-9c9a723269fd"
      unitRef="usd">11203000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTktMy0xLTEtMzAyMjc_8f985249-4b90-4f38-921d-5c51394f2704"
      unitRef="usd">8187000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTktNS0xLTEtMzAyMjc_b20d6b2d-134a-44a1-8c8f-90249e6ea520"
      unitRef="usd">-13000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTktNy0xLTEtMzAyMjc_3e859529-0aac-4a3e-99f3-9711d37b02d1"
      unitRef="usd">-7542000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMTktOS0xLTEtMzAyMjc_174b50bb-0070-4e39-89c3-609e28f1daef"
      unitRef="usd">11835000</us-gaap:OperatingIncomeLoss>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtMS0xLTEtMzAyMjc_15b94363-62bc-4cf8-ada4-c83d8ac688f0"
      unitRef="usd">2820000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i08585d9b2fd8439ea99706f3214d3923_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtMS0xLTEtMzAyMjc_1adadd67-f9b2-4c47-82a5-cdf29cfca9b0"
      unitRef="usd">2820000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtMy0xLTEtMzAyMjc_234a808b-5c50-4054-9b2a-577b1193a852"
      unitRef="usd">472000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i8f40202178c44f968b8d64d2be9812f3_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtMy0xLTEtMzAyMjc_9aad0681-3632-4c2e-84e1-7404ef197f48"
      unitRef="usd">472000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtNS0xLTEtMzAyMjc_334f38a2-6872-4ed5-aa48-250c426e0e32"
      unitRef="usd">1953000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i3d9bcf701a8345dfae6afea3c058d620_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtNS0xLTEtMzAyMjc_92594163-056f-45dd-a20d-c4df34dd9fa2"
      unitRef="usd">1953000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtNy0xLTEtMzAyMjc_7969fce9-1001-447b-8478-3899ac7418cf"
      unitRef="usd">1000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i74a095817f08478dbdc97b41df991ade_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtNy0xLTEtMzAyMjc_a8a0e923-a42b-4702-b5d5-b3e6725c19e8"
      unitRef="usd">1000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtOS0xLTEtMzAyMjc_301e5157-621f-47af-b875-118a6d386800"
      unitRef="usd">5246000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjAtOS0xLTEtMzAyMjc_7ecab0f3-2e86-41ad-a54d-e452e81598b2"
      unitRef="usd">5246000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:Assets
      contextRef="i13d05a0cbc9e40a3b0502a677725004e_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjItMS0xLTEtMzAyMjc_4f0b6e93-609d-4ed6-80dc-eb10d82cb016"
      unitRef="usd">282033000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ib2ece010168147a48c366222753b44aa_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjItMy0xLTEtMzAyMjc_68171040-2470-40b7-9c4f-bc73c35b1679"
      unitRef="usd">229515000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id1b6cbc3c3024cab8a35b9e1d6f74431_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjItNS0xLTEtMzAyMjc_2201bef0-9cdf-486f-97fa-6770d4aa2d82"
      unitRef="usd">179410000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="if1063d9496274587901ec694e10f232a_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjItNy0xLTEtMzAyMjc_3b89ef38-7fde-441c-adcc-5826e35abdb4"
      unitRef="usd">27314000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjItOS0xLTEtMzAyMjc_dffd9d4d-951c-4d0a-80fc-28fbfd63ccd9"
      unitRef="usd">718272000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i770e2fd7f300440ebb481b0a11814540_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjQtMS0xLTEtMzAyMjc_7d7bd4e6-7c51-475b-a513-4ff95788238f"
      unitRef="usd">268773000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="idf23452914e7442290d1ba3dcc351e24_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjQtMy0xLTEtMzAyMjc_2697e6a8-f7d3-4c0b-82b2-1ea1f101d3a1"
      unitRef="usd">236755000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iebd4034363d54b63a69b79a956414d56_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjQtNS0xLTEtMzAyMjc_30fcfa8f-dd35-4235-9da6-74ce202368d2"
      unitRef="usd">178671000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="icd5764fd46644f58ac1b7563337c33b9_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjQtNy0xLTEtMzAyMjc_0a9a3107-69a8-4029-a34b-38fdfffcbdcb"
      unitRef="usd">33124000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjRkZGI1OWIzYTIxMzQ4YjE5OTE0ZmRhZDM2YTZmOTkzL3RhYmxlcmFuZ2U6NGRkYjU5YjNhMjEzNDhiMTk5MTRmZGFkMzZhNmY5OTNfMjQtOS0xLTEtMzAyMjc_125d522d-e890-46b9-ae9a-d489c966e4c8"
      unitRef="usd">717323000</us-gaap:Assets>
    <us-gaap:Goodwill
      contextRef="i770e2fd7f300440ebb481b0a11814540_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfMS0xLTEtMS0zMDIyNw_c597d990-ca85-493d-a20a-66d1791c088e"
      unitRef="usd">38712000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="idf23452914e7442290d1ba3dcc351e24_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfMS0zLTEtMS0zMDIyNw_b9062e75-c481-48a6-8b6c-63d2c44ce08c"
      unitRef="usd">71346000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="iebd4034363d54b63a69b79a956414d56_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfMS01LTEtMS0zMDIyNw_7dd882f2-ae52-48d0-92a3-bb147f96513f"
      unitRef="usd">39147000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="icd5764fd46644f58ac1b7563337c33b9_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfMS03LTEtMS0zMDIyNw_6d12accd-48a3-489f-94ba-575ac7a847b9"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="idd920b44cdb94dea98f02764a51db7e7_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfMS05LTEtMS0zMDIyNw_b525c4fa-409b-4696-a5e2-8e6345632fbe"
      unitRef="usd">149205000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i3b812e9b0dc24b5e918d27f1c9d45a4d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNC0xLTEtMS0zMDIyNw_37ea2638-4c48-4d71-a139-923ee29fd49f"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i9524fd9dd352474a9953a789a10b9757_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNC0zLTEtMS0zMDIyNw_d7d40606-bbe6-478c-89f8-7df1eee2c2bf"
      unitRef="usd">-1412000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i92751592a30e4a21b70f2ff2a29a5be1_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNC01LTEtMS0zMDIyNw_98f795ee-fdbf-4db7-9992-731da564aaeb"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="id9123d611ee84ce5af61210383fdd88a_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNC03LTEtMS0zMDIyNw_98319f6e-5c11-43e9-973d-0979ecb580b0"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNC05LTEtMS0zMDIyNw_6e36203a-57de-422c-a176-df26a969b354"
      unitRef="usd">-1412000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i13d05a0cbc9e40a3b0502a677725004e_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNS0xLTEtMS0zMDIyNw_490ec323-fbbe-4129-bf03-128e00c6cc25"
      unitRef="usd">38712000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ib2ece010168147a48c366222753b44aa_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNS0zLTEtMS0zMDIyNw_d2d8de97-9b04-4fd3-bd7d-3a31cef19715"
      unitRef="usd">69934000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id1b6cbc3c3024cab8a35b9e1d6f74431_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNS01LTEtMS0zMDIyNw_6f9c9788-4805-490e-82d1-6ab748cded58"
      unitRef="usd">39147000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="if1063d9496274587901ec694e10f232a_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNS03LTEtMS0zMDIyNw_f4a3814a-677c-46ee-8d5d-d74eb8d4ea39"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i9b4b037f105e4a26a6b195bbf27e5bed_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjVkYTlhZmRmMDA5NjQ0ZGI4ODA0MjhjMmU0MjQ3NDNmL3RhYmxlcmFuZ2U6NWRhOWFmZGYwMDk2NDRkYjg4MDQyOGMyZTQyNDc0M2ZfNS05LTEtMS0zMDIyNw_82b3528b-8978-40ef-acd4-c07c2a32f8b7"
      unitRef="usd">147793000</us-gaap:Goodwill>
    <us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RleHRyZWdpb246M2M2MTNhMDRhZTJjNDg1ODk5MTQ0OTZiZTk2MmI0MTFfMzA4NQ_68cecc4e-a33c-4839-a97e-06eec8226d67">&lt;div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We did not allocate non-operating loss or income tax benefit to the reportable segments. The following table reconciles operating income as reported above to net income for the three months ended January&#160;31, 2022 and 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;January 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,126&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(523)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(751)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,418)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,424)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfMy01LTEtMS0zMDIyNw_216c2eba-508a-4db9-8e64-35d98cf90cbb"
      unitRef="usd">14126000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfMy01LTEtMS0zMDIyNw_7f2b95e6-0818-4dad-9e1a-ec33b87be082"
      unitRef="usd">14126000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfMy03LTEtMS0zMDIyNw_ec0dd342-05ab-4c38-beb4-da21e9f8071b"
      unitRef="usd">11835000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfMy03LTEtMS0zMDIyNw_f8cd4361-abff-4e15-90ab-a51a54c4ce0f"
      unitRef="usd">11835000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNC01LTEtMS0zMDIyNw_b0e3ed12-abac-473e-90f4-2621b13949e8"
      unitRef="usd">523000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNC03LTEtMS0zMDIyNw_88c1085d-85aa-42cf-82e1-9c8a9bd4da8a"
      unitRef="usd">751000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNS01LTEtMS0zMDIyNw_14fb9184-ff58-4037-a7aa-a9cdc64bc107"
      unitRef="usd">54000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNS03LTEtMS0zMDIyNw_26eb935d-7f57-4873-b514-4da2203e7a98"
      unitRef="usd">192000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNi01LTEtMS0zMDIyNw_2fe71061-2416-442e-92d2-bbd4cbd2f3a5"
      unitRef="usd">2418000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNi03LTEtMS0zMDIyNw_7697e961-8864-46c1-abce-8b5ffb6d72f8"
      unitRef="usd">3424000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNy01LTEtMS0zMDIyNw_91f6cdb9-aeb2-44d4-905d-0716606bf9d4"
      unitRef="usd">11239000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY183OS9mcmFnOjNjNjEzYTA0YWUyYzQ4NTg5OTE0NDk2YmU5NjJiNDExL3RhYmxlOjc1NTFkNjg1MmNjYjQ0NDRiOTI5YjIzZTI5MjgzMTE1L3RhYmxlcmFuZ2U6NzU1MWQ2ODUyY2NiNDQ0NGI5MjliMjNlMjkyODMxMTVfNy03LTEtMS0zMDIyNw_0d6aa20b-887e-4063-a496-2a8d3481b863"
      unitRef="usd">7852000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RleHRyZWdpb246NjhhYzY0ZDIzZDUxNDY3ZWE3MzFmMGFkMTQ3ZWMwODdfMTA3MA_97ead1a4-1387-4141-9f12-b606058eb9c9">Earnings Per Share&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We compute basic earnings per share by dividing net income by the weighted average number of common shares outstanding during the period. Diluted earnings per common and potential common shares include the weighted average of additional shares associated with the incremental effect of dilutive employee stock options, non-vested restricted stock as determined using the treasury stock method prescribed by U.S. GAAP and contingent shares associated with performance share awards, if dilutive.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic and diluted earnings per share for the three months ended January&#160;31, 2022 and 2021 were calculated as follows (in thousands, except per share data):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:13pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:57.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.765%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.765%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.767%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Diluted earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,872&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Diluted earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;We do not include equity instruments in our calculation of diluted earnings per share if those instruments would be anti-dilutive. Such dilution is dependent on the excess of the market price of our stock over the exercise price and other components of the treasury stock method. There were no anti-dilutive instruments for the three months ended January&#160;31, 2022 and 2021.</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RleHRyZWdpb246NjhhYzY0ZDIzZDUxNDY3ZWE3MzFmMGFkMTQ3ZWMwODdfMTA1Nw_a9c8987a-f729-48fd-9781-f0f278959877">&lt;div style="margin-top:8pt;text-align:justify;text-indent:22.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic and diluted earnings per share for the three months ended January&#160;31, 2022 and 2021 were calculated as follows (in thousands, except per share data):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:13pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:57.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.765%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.765%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.767%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Diluted earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Three Months Ended January 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,872&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Diluted earnings per common share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMTgtMS0xLTEtMzAyMjc_919136f0-516c-4576-bb97-b484dca2219c"
      unitRef="usd">11239000</us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMTgtMy0xLTEtMzAyMjc_1ec35577-4530-4c18-8189-63febff448e7"
      unitRef="shares">33124000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMTgtNS0xLTEtMzAyMjc_63ea3be0-dfa6-444b-90e2-2b532ae7db44"
      unitRef="usdPerShare">0.34</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i9c6d34a6143742948247cef2f3806410_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjAtMy0xLTEtMzAyMjc_6f116397-853f-4872-8c5d-6e9a2d39870f"
      unitRef="shares">34000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i8c61391740404f08bb8539728127989d_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjEtMy0xLTEtMzAyMjc_3b73273f-6843-4ace-b56f-d1c3cbbd391e"
      unitRef="shares">107000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i2fad3ce3463c40a8ad8eb5eefa159c12_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjMtMy0xLTEtMzAyMjc_59796858-41de-41ca-8671-65e4dc312310"
      unitRef="shares">33000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjQtMS0xLTEtMzAyMjc_a9766320-10f8-4e88-98f7-8c611d06b599"
      unitRef="usd">11239000</us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjQtMy0xLTEtMzAyMjc_d6629022-3a27-4efd-aa69-10d4459cc486"
      unitRef="shares">33298000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjQtNS0xLTEtMzAyMjc_3dc9ef11-9536-4b5f-b067-5eea4b4cd3e7"
      unitRef="usdPerShare">0.34</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjYtMS0xLTEtMzAyMjc_4fdb4e89-d43b-4807-90b6-e9ec14cff185"
      unitRef="usd">7852000</us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjYtMy0xLTEtMzAyMjc_15228c8f-aa4c-4a33-a6e9-a6e3d339a173"
      unitRef="shares">32872000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjYtNS0xLTEtMzAyMjc_9e3ba009-0aeb-4e61-8e1f-b338e4113b72"
      unitRef="usdPerShare">0.24</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i8a29a85d4f3f46c8a5088301cdd771d8_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjgtMy0xLTEtMzAyMjc_5dc6c800-ef4b-46f2-a0d6-382015667b8b"
      unitRef="shares">164000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i9b48870c196f45ec8f83dc6c054b0c26_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMjktMy0xLTEtMzAyMjc_86ac80f5-b670-4477-b975-8b350c99382c"
      unitRef="shares">105000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="id5fe2c3b26cc41cdb45c6d99fbe2c455_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMzEtMy0xLTEtMzAyMjc_11acd8c5-2b8f-4b8b-8b58-322de5b94f8e"
      unitRef="shares">71000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMzItMS0xLTEtMzAyMjc_ad021529-d2ff-419d-a888-87d26ce4ca0c"
      unitRef="usd">7852000</us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMzItMy0xLTEtMzAyMjc_e958a0d9-b7be-4da3-acac-a47dd924bf67"
      unitRef="shares">33212000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="icd3846889ca345bc9c34ac14d08820d7_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184Mi9mcmFnOjY4YWM2NGQyM2Q1MTQ2N2VhNzMxZjBhZDE0N2VjMDg3L3RhYmxlOmFkMjNhNmZiOWNjYzRjZDY4NGQ5ZTRiYWY1OTI1MjA3L3RhYmxlcmFuZ2U6YWQyM2E2ZmI5Y2NjNGNkNjg0ZDllNGJhZjU5MjUyMDdfMzItNS0xLTEtMzAyMjc_0538372f-96ce-4ae8-9905-b8e8f6c0735f"
      unitRef="usdPerShare">0.24</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <nx:DescriptionOfNewAccountingPronouncementsRecentlyAdoptedAndNotYetAdoptedTextBlock
      contextRef="i1edb1c8185a4425bbb95daf162adcf3f_D20211101-20220131"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmMDU4YmYyNDA2YzRmNGJiMTg4NTgyYTNlODliNDBjL3NlYzoxZjA1OGJmMjQwNmM0ZjRiYjE4ODU4MmEzZTg5YjQwY184NS9mcmFnOjE3MDQ2ZGZkOTE1ZTRkYTc5YzQ4OGZhNTI4NTdkMDg1L3RleHRyZWdpb246MTcwNDZkZmQ5MTVlNGRhNzljNDg4ZmE1Mjg1N2QwODVfNjYw_a60ba7de-f19a-4114-804f-9e04eb28cdaa">New Accounting Guidance From time to time, new accounting pronouncements are issued by the Financial Accounting Standards Board (FASB) or other standards setting bodies that we adopt as of the specified effective date. We did not adopt any new accounting pronouncements during the three months ended January&#160;31, 2022. As of January&#160;31, 2022, we believe the impact of any recently issued standards that are not yet effective are either not applicable to us at this time or will not have a material impact on our condensed consolidated financial statements upon adoption.</nx:DescriptionOfNewAccountingPronouncementsRecentlyAdoptedAndNotYetAdoptedTextBlock>
</xbrl>
