<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:odc="http://www.oildri.com/20211031"
  xmlns:srt="http://fasb.org/srt/2020-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="odc-20211031.xsd" xlink:type="simple"/>
    <context id="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i3abc9187ac3c4c48b21f060d91286331_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="ia27044eae30b4a0e961c11a4a6f851ff_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i2190287ea251424db6ef6461f8b629dd_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="id52e272c542f462197f83d7cda56d421_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ifaef54edef1043faab5c16926e4deb71_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i4b507406ca6747cda88f10f39639aa98_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ia1f3054c59d7403090c0645bc4f62ecd_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ia31a6ac5fc2043f687eaf1749a6cb8d9_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="id85507897a88418d8f30767663e2c555_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i377ab695ac614e1fb2001580764287ce_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i2af578346a8147ef9069d08d0b3fb7a7_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i0697e2e0c13d4fb5a463c2bc33f0a3f4_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i75127e4c02274447be8da394da52e7a6_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="id018511c70a649878dfc543d5ef943dd_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ic3e316d10fa3420ab69d35acd5c43706_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="ie815fbcb145f4a4b8c223ac540031723_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="ib0fce794d94e4c05b1214608892d4327_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="ia2a6da67e0da43e8abcb2704358b7bde_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="icb675548450344ad8657be9ef64e8936_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="i01a0247ff90f4af2883c0d02e0e9e7dd_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="i370b1859a1294ff39e5b9a27df1ceff4_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="ib1986a33eb424f119fb8fa31c3a517bd_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i97314d0bb4004fa88b6c7372750e33a0_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i602640aef8374deca7c1bfb33c0994a0_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ibeb4345aa42f4ee8ac64d44fd52ac1f4_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i6e408af424e8466185f11db4bb7ccd49_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib4bf8235bfc042f29792df42d49d26ff_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i1d731314b76349078c952f1cc39095db_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="idb65114750e243d09592128bcaad0509_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i376a5ab73cc249699ea6cf730dc5c7a4_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="i1c83d37b40cd466c901d80e001395ffe_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i1afcaf42780348558cfbff043bebebba_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="i903e6f9d70b041d9893da4d09dc48546_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="i08fef4565a814beba238f0669d51e646_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="i2ed030dbf6de4c4e843f2aebd8f80527_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i6e15836dc88c4877813172fb6579c633_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i09cade1242dd46dca7149697ceb77108_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="if1612c640a224afd9049922af82ac769_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ibd90541b89d04feeaf068a30fd79de03_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i9eee953ede8b4d09b6ec4480902ec027_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i64c7821e52d5469fb874fbc045a19728_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i1ecfb6d5d44a4990a4fd3e7c9286733a_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="idf9e6e7486644eab821573d02fdc16ba_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i9631c6fbc6c146ec8150d9a55365d6d2_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DeferredRevenueArrangementTypeAxis">us-gaap:UpFrontPaymentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i92061bce06bf4ab791348b13703b8b7b_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DeferredRevenueArrangementTypeAxis">us-gaap:UpFrontPaymentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1f3ba1f5a145435a81251fbeeb53f6c6_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DeferredRevenueArrangementTypeAxis">us-gaap:UpFrontPaymentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i0ddf76d2304f4b23b2730dd8c3dc8823_D20200327-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <startDate>2020-03-27</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i79bd67e3a230413f8770f9b6847dff7f_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="ifd9007a476f645f4b8c5a303532e459e_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i2b9751520c1d44b3ba0a5552e8b64991_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="id0162ba53aca450da41819a9ae57b5e3_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="iaace6c93e13044a58cb5a019be6d7d4c_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i06a8ea4541fc4e60974ba915da4a0785_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i84190f66d19b48fbb6abb77d3a7afbb9_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i4719bbbd92cd4903bbc76ef43bb13778_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="if6e8508264ce4d1f82a4b03a74ca4e31_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:CatLitterMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="id2674312275141f18153cbc7c811a6d8_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:CatLitterMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i6dd3068b8f9a457dbe683593f30b85ec_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:CatLitterMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="ic22bad6f44e845968fc25dca27e31fef_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:CatLitterMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i522829360394459789d93aa915cd0273_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:IndustrialandSportsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i3fb9016bbab14d6a87a2060cbd5764ca_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:IndustrialandSportsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i0948f788e411442aa3128b298d67117b_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:IndustrialandSportsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="iaca382adfcd647228c981bf349c1be93_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:IndustrialandSportsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ie0a8a08a925c496b810541f5ec896c69_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AgriculturalandHorticulturalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="ia90c8dbd6ff346ffb7623cecde48d50f_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AgriculturalandHorticulturalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i8edfd56b2b504bb281cc6372f2900f44_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AgriculturalandHorticulturalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i53b1c834c1e542439cb356f8360fde82_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AgriculturalandHorticulturalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ia0e600a20e21433cbc56291008d53143_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:BleachingClayandFluidsPurificationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i0208ea62315348b2a5dfc3f1330d5c1a_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:BleachingClayandFluidsPurificationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ibfd3de040df9405ba52d61f8f6133a04_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:BleachingClayandFluidsPurificationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="ief40aa0cbb60457f97cb1a6de354915f_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:BleachingClayandFluidsPurificationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i2e3a8fe681a44e93bb807a96b94cdc11_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AnimalHealthandNutritionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i7950a48f81014570821035508253998b_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AnimalHealthandNutritionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="iee76ca3b56894d6f883b22cf9f041976_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AnimalHealthandNutritionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i791f1e0aa6d54f73b48e5d0042daa45f_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">odc:AnimalHealthandNutritionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i21e3843746df427fa0e50f89ed7a3a8b_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i35fdc199219149ed8ef95803a96d3452_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i783b311d4b734242bba704ea68ef8037_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i6ab077db00b64aeb9326f70882fd6e20_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:BusinesstoBusinessSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="iafe9849677d5489ebcdd72039122c9c5_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="id04d1febf4f64d44bd46f892201303b1_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">odc:RetailAndWholesaleSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i88e90fb9507447ff804b43a60a321594_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i6b21417227ed4880a4fa4898359dec93_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if3cfdf93882c49719fa678b473365c4c_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">odc:A2006PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i68a11da7cd8f4d7b9ed5950ea1a14e19_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">odc:A2006PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i93f67bd91b594657a14607569d13e87b_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">odc:A2006PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i8ddcec37ac424e9d98526b9496db77da_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">odc:A2006PlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i7ef28261043945deb7ff9da47389deb1_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">odc:A2006PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="ia8263fbdf8154196af33ebe4d45f5d24_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i809774ca92034e1595aefeadc14bb6bc_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</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="if58ec964e72740158aca614853de02f0_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i12a4ed92b7884296a8fd3c9237386167_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="iae963d6c5aa0410eb85ff3ad7de318f2_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i2bdd0ffb410749548a13ae3187bcc6b3_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="i55135ead9f0a498ab5ca3d86dbdbe6ba_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="ie10bff22f89a4333babf90159aa3f74f_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i82cdc67ab3724df8bcdb3b4e8e4629d5_D20210801-20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-10-31</endDate>
        </period>
    </context>
    <context id="ice6e9741efc441208d5585f9052a8673_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i0ce230f4679a43538c4e34b15efe96ff_I20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i3dfebdca8a654c999fd5f398d900d6dc_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000074046</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-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="number">
        <measure>pure</measure>
    </unit>
    <unit id="segment">
        <measure>odc:segment</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF80LTEtMS0xLTE2NjM0_2caf2d3c-3ae0-437b-8bc5-b4421eff6922">0000074046</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF81LTEtMS0xLTE2NjM0_0214f055-ad98-4232-9049-e71720c9031b">--07-31</dei:CurrentFiscalYearEndDate>
    <dei:EntityFilerCategory
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF82LTEtMS0xLTE2NjM0_43accdea-95fb-43bb-915b-c12dac39f22f">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntityEmergingGrowthCompany
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF84LTEtMS0xLTE2NjM0_3ecfea94-cda3-450b-a0df-451b8774feab">false</dei:EntityEmergingGrowthCompany>
    <dei:DocumentPeriodEndDate
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF8xMC0xLTEtMS0xNjYzNA_fec191c2-a1f8-46b7-8a00-0a50ed4f551e">2021-10-31</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF8xMS0xLTEtMS0xNjYzNA_e3e8b7ac-4289-4d4f-bfe5-a47c37c24255">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF8xMi0xLTEtMS0xNjYzNA_7c253fbd-0af6-4f77-a39c-fff4bfe45e0d">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF8xMy0xLTEtMS0xNjYzNA_e6a8b94a-41b8-46cb-959f-d22743dcdf4c">false</dei:AmendmentFlag>
    <dei:EntitySmallBusiness
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80L2ZyYWc6ODk2MmM2NGZjN2JjNDJkMWJjNGRjZWY0ZWJjZDgwM2UvdGFibGU6YjViYTg4MmIyMjhhNDIyNzliZjdhNDQ1YTE0ZjYzZTAvdGFibGVyYW5nZTpiNWJhODgyYjIyOGE0MjI3OWJmN2E0NDVhMTRmNjNlMF8xOC0xLTEtMS0xNjYzNA_66adf67a-692f-4c8c-a758-c15ac1b547fb">true</dei:EntitySmallBusiness>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNC0xLTEtMS0xNjYzNA_881216a3-b120-4054-b403-8e3a91f2a33c"
      unitRef="usd">82460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNC0zLTEtMS0xNjYzNA_517a0cec-fd97-499c-96af-3647e873e6c4"
      unitRef="usd">76097000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNS0xLTEtMS0xNjYzNA_c63bdc2e-efa3-45e7-a6ac-a55e83e6d73a"
      unitRef="usd">68642000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNS0zLTEtMS0xNjYzNA_d8cb087e-0e40-4673-a86f-2c3a49a8bcdf"
      unitRef="usd">57317000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNi0xLTEtMS0xNjYzNA_1997cfc7-23b2-4d78-99c4-e618f00faf60"
      unitRef="usd">13818000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNi0zLTEtMS0xNjYzNA_b988c6a4-193e-41c6-a67a-b71ac4089fe2"
      unitRef="usd">18780000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNy0xLTEtMS0xNjYzNA_6085370b-4a49-427e-9a3e-5c38f7550479"
      unitRef="usd">13373000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfNy0zLTEtMS0xNjYzNA_2d0c7862-3da1-4e50-b5f5-e607ebf4e8c6"
      unitRef="usd">13603000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfOC0xLTEtMS0xNjYzNA_c57957f5-3e6a-43e7-9576-5761a92c0a87"
      unitRef="usd">445000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfOC0zLTEtMS0xNjYzNA_ba465a9e-2f3e-4026-baf0-ada16439ad30"
      unitRef="usd">5177000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpenseDebt
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTEtMS0xLTEtMTY2MzQ_1b23f46a-1fad-4bd9-9732-0b2830615a09"
      unitRef="usd">177000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTEtMy0xLTEtMTY2MzQ_dc63a12f-4725-47f9-b908-6092fc9e15da"
      unitRef="usd">192000</us-gaap:InterestExpenseDebt>
    <us-gaap:InvestmentIncomeInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTItMS0xLTEtMTY2MzQ_a1dd010e-b2d1-46e0-9048-7cd0063600e7"
      unitRef="usd">9000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTItMy0xLTEtMTY2MzQ_f158eddd-cecf-421a-a497-1704fcbd23a7"
      unitRef="usd">25000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTMtMS0xLTEtMTY2MzQ_8ffda50e-f7c8-41a2-92cf-46d909ce0d4a"
      unitRef="usd">433000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTMtMy0xLTEtMTY2MzQ_4f94b4a2-e829-4a4f-8d19-7ae886b2e8d5"
      unitRef="usd">-255000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTQtMS0xLTEtMTY2MzQ_a261f179-4096-42d2-8dab-51929335a20e"
      unitRef="usd">265000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTQtMy0xLTEtMTY2MzQ_509878ce-560d-4729-9803-449f8e8bce95"
      unitRef="usd">-422000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTYtMS0xLTEtMTY2MzQ_94258a9c-b8bc-43e3-b397-e4a419a45e72"
      unitRef="usd">710000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTYtMy0xLTEtMTY2MzQ_9b7ac437-45bc-49ae-9fc1-734a75858f36"
      unitRef="usd">4755000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTctMS0xLTEtMTY2MzQ_ed01446d-f520-49b5-8806-8b40d5ded59b"
      unitRef="usd">115000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTctMy0xLTEtMTY2MzQ_b0fc730b-483c-42e3-992a-800a0315ac22"
      unitRef="usd">806000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTgtMS0xLTEtMTY2MzQ_a535d6a5-29dc-476c-a930-ac117d0af1ce"
      unitRef="usd">595000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTgtMy0xLTEtMTY2MzQ_5ef52454-690b-4c98-8033-431906641f07"
      unitRef="usd">3949000</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTktMS0xLTEtMTY2MzQ_990f02b3-76a7-493b-ab10-257b16bafadd"
      unitRef="usd">10000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMTktMy0xLTEtMTY2MzQ_dd811a7e-ce8f-4f88-a4a6-2153f03e1fb5"
      unitRef="usd">-35000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjAtMS0xLTEtMTY2MzQ_47cc390d-c8e9-44b5-b1e9-7d587ef33ab3"
      unitRef="usd">585000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjAtMy0xLTEtMTY2MzQ_c8a6aa65-4b86-4327-8fd0-b82e043414e4"
      unitRef="usd">3984000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjMtMS0xLTEtMTY2MzQ_ca7120fa-b47a-4483-9966-616f510e1a17"
      unitRef="usdPerShare">0.08</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjMtMy0xLTEtMTY2MzQ_0fa6ec83-b380-4315-a54f-271f9f89815f"
      unitRef="usdPerShare">0.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjQtMS0xLTEtMTY2MzQ_56746c9c-8c77-4d4b-9f17-5f7ce0347005"
      unitRef="usdPerShare">0.07</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjQtMy0xLTEtMTY2MzQ_6886c42d-d708-480d-bc62-e38e190a8059"
      unitRef="usdPerShare">0.43</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjUtMS0xLTEtMTY2MzQ_fa231ff7-9d24-4a02-829d-d30c6fb5e917"
      unitRef="usdPerShare">0.08</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjUtMy0xLTEtMTY2MzQ_843b01e1-d54c-4b6e-a918-692a3a7de667"
      unitRef="usdPerShare">0.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjYtMS0xLTEtMTY2MzQ_bb068135-487f-46ff-a283-d3fc0f3c73bf"
      unitRef="usdPerShare">0.06</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjYtMy0xLTEtMTY2MzQ_04ebacad-6e3e-424a-9256-ce9ca86ac3e0"
      unitRef="usdPerShare">0.42</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjgtMS0xLTEtMTY2MzQ_4164e81d-b46a-4c52-ad7d-86c6fe8e0b58"
      unitRef="shares">5113000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjgtMy0xLTEtMTY2MzQ_4eef65fc-85a4-4b77-88d5-caaa69be3550"
      unitRef="shares">5149000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjktMS0xLTEtMTY2MzQ_6f3c51cd-9aea-425a-822e-d46b9c8ed909"
      unitRef="shares">1921000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMjktMy0xLTEtMTY2MzQ_0a9e9552-1cac-4041-b188-a9a10ca5255f"
      unitRef="shares">1926000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzAtMS0xLTEtMTY2MzQ_42b6481c-4bee-4b04-a442-26542b406e54"
      unitRef="shares">5237000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzAtMy0xLTEtMTY2MzQ_ad5248f9-4de7-46ba-8cb6-92ab5681888e"
      unitRef="shares">5276000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzEtMS0xLTEtMTY2MzQ_060b7c8a-212a-4a00-83a7-f5b1c3ec838b"
      unitRef="shares">1967000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzEtMy0xLTEtMTY2MzQ_ef2034c8-4fd8-42fe-846b-82ff85085876"
      unitRef="shares">1978000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzMtMS0xLTEtMTY2MzQ_b0b08d58-fb04-463f-a1a8-eec093d8539f"
      unitRef="usdPerShare">0.2700</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzMtMy0xLTEtMTY2MzQ_a7e35d82-6bb1-40a1-8ec2-776bc0ad19f3"
      unitRef="usdPerShare">0.2600</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzQtMS0xLTEtMTY2MzQ_a2f8f8b3-6831-445b-a691-9f44226da454"
      unitRef="usdPerShare">0.2025</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yOC9mcmFnOmVkYjM0YTMxZmNhYzQ3MDNiZDk3N2IzMjczOGNjOTgyL3RhYmxlOjA1YzU5MjIwYzA1MjQyNThhYjYzMGI2YzQ4NGUxN2Y2L3RhYmxlcmFuZ2U6MDVjNTkyMjBjMDUyNDI1OGFiNjMwYjZjNDg0ZTE3ZjZfMzQtMy0xLTEtMTY2MzQ_daad3519-299a-4580-8077-219802981f5c"
      unitRef="usdPerShare">0.1950</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:NetIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfNC0xLTEtMS0xNjYzNA_b963ce3d-b49e-4dab-a5df-b71afc92c6f6"
      unitRef="usd">585000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfNC0zLTEtMS0xNjYzNA_781eaab3-9db1-4722-982c-9fa765e2be4c"
      unitRef="usd">3984000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfNy0xLTEtMS0xNjYzNA_be4c3e25-9aeb-439d-90f2-921ce5fa30ec"
      unitRef="usd">-27000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfNy0zLTEtMS0xNjYzNA_095977be-fa94-4fd4-8a61-a9a7e8ccd647"
      unitRef="usd">-128000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfOC0xLTEtMS0xNjYzNA_f3cdc3a6-72b9-4a6e-9309-468b4085a9b4"
      unitRef="usd">-34000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfOC0zLTEtMS0xNjYzNA_6f712d96-dcd0-43dc-93af-195442aef471"
      unitRef="usd">272000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfOS0xLTEtMS0xNjYzNA_27c26af8-6abf-4224-bd8b-d67f481f73c8"
      unitRef="usd">-7000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfOS0zLTEtMS0xNjYzNA_98596595-c18d-4cfb-a1af-9793cf9c7cd5"
      unitRef="usd">400000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfMTAtMS0xLTEtMTY2MzQ_1a8a2235-1d53-40ed-90eb-b63ec8a21c79"
      unitRef="usd">578000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zMS9mcmFnOjMyNTQxNWYxMzFkYjRiZjBiNmJhMDQ2NDVhYWRlNGI3L3RhYmxlOjUwYTU0YmI1NWZkNzRkZjRhNzIwYzg0NDA3ODQ4M2I5L3RhYmxlcmFuZ2U6NTBhNTRiYjU1ZmQ3NGRmNGE3MjBjODQ0MDc4NDgzYjlfMTAtMy0xLTEtMTY2MzQ_e2c7fd35-2e5b-4e62-997e-3e41774011e7"
      unitRef="usd">4384000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl85NC9mcmFnOmJjODEyYmE0NmI1NTQ2MjE5OTA2NGEwMmEyYjBmY2ZjL3RleHRyZWdpb246YmM4MTJiYTQ2YjU1NDYyMTk5MDY0YTAyYTJiMGZjZmNfMjIz_5b9e7b9c-fce3-42df-8df5-11cf119346af">SUBSEQUENT EVENTS</us-gaap:SubsequentEventsTextBlock>
    <dei:DocumentType
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzYw_f1f77aba-3995-4dfd-a3e2-47d4fce69d44">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzU0_dce32f18-0b02-449d-8c86-a00c0a562cdf">true</dei:DocumentQuarterlyReport>
    <dei:DocumentTransitionReport
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGFibGU6ZDNiY2RlOTA2OGEwNGZkNmI1MzU3ZTM2YzE0MzNmMzcvdGFibGVyYW5nZTpkM2JjZGU5MDY4YTA0ZmQ2YjUzNTdlMzZjMTQzM2YzN18wLTAtMS0xLTE2NjM0_cb5b70fc-d2cc-4393-9563-77ef7a91b5f7">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzU1_6fb02e9d-0ffd-4b59-9552-0bdc6158bb94">001-12622</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzQ2_e0c6efce-3dff-45b5-83d2-853f563b7a77">OIL-DRI CORPORATION OF AMERICA</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzQ5_a4b75310-f8f6-44ea-8e1a-7c40244e64e9">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzU2_f242c309-57d6-4832-9826-97438b3f9911">36-2048898</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzUw_f967ec5e-6aa8-43f4-9b42-e18b4ead2a0e">410 North Michigan Avenue</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzQ1_b8d34163-5bba-4d3d-99e8-220e12a2fd2c">Suite 400</dei:EntityAddressAddressLine2>
    <dei:EntityAddressPostalZipCode
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzQ3_a56b34b3-8a7c-4cd1-a1bc-ca0d127fc72b">60611-4213</dei:EntityAddressPostalZipCode>
    <dei:EntityAddressCityOrTown
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzUx_be60ec6c-e6dd-48e1-a699-5c680b1e26ed">Chicago</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzU3_00a0a449-0b58-439a-91d9-3ee8c1bf018b">IL</dei:EntityAddressStateOrProvince>
    <dei:CityAreaCode
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzUy_70937082-ef86-4ff2-8a3d-815131648a04">312</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzU4_9123153b-b620-4606-8d57-e071e70767e8">321-1515</dei:LocalPhoneNumber>
    <dei:EntityCurrentReportingStatus
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzUz_8acaf8ad-a825-441f-98a5-8975de67d301">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzQ4_45b0d3c2-137f-4510-8a70-d9ec0e0e28c3">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGFibGU6Y2ZiNTlmZTk5YjhmNGY3OWI2ZjRiMGZkNWQ4NzJjYjYvdGFibGVyYW5nZTpjZmI1OWZlOTliOGY0Zjc5YjZmNGIwZmQ1ZDg3MmNiNl8wLTEtMS0xLTE2NjM0L3RleHRyZWdpb246MTI5MjUxMDkyYzZmNDg2ZDg5NTg2OTU4MzZiNjExOTJfNA_43accdea-95fb-43bb-915b-c12dac39f22f">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGFibGU6Y2ZiNTlmZTk5YjhmNGY3OWI2ZjRiMGZkNWQ4NzJjYjYvdGFibGVyYW5nZTpjZmI1OWZlOTliOGY0Zjc5YjZmNGIwZmQ1ZDg3MmNiNl8wLTMtMS0xLTE2NjM0L3RleHRyZWdpb246YzI3ZjNlMzQ5ZDQyNGM5NWIwN2NkZmU0NzM2MjJjZmNfMzA_66adf67a-692f-4c8c-a758-c15ac1b547fb">true</dei:EntitySmallBusiness>
    <dei:EntityShellCompany
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8yNzU5_bdf24115-4977-4be2-8974-a72bca021f75">false</dei:EntityShellCompany>
    <dei:Security12bTitle
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGFibGU6ZjQ3MTI2NTBhYzU2NGMwZWFjODdlOTY5OTRhNDA2ZmQvdGFibGVyYW5nZTpmNDcxMjY1MGFjNTY0YzBlYWM4N2U5Njk5NGE0MDZmZF8xLTAtMS0xLTE2NjM0_d4980d24-8946-4def-b6c3-75ac786813b9">Common Stock, par value $0.10 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGFibGU6ZjQ3MTI2NTBhYzU2NGMwZWFjODdlOTY5OTRhNDA2ZmQvdGFibGVyYW5nZTpmNDcxMjY1MGFjNTY0YzBlYWM4N2U5Njk5NGE0MDZmZF8xLTEtMS0xLTE2NjM0_4e9f0b30-579b-4a36-9bbb-d7837af202b0">ODC</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGFibGU6ZjQ3MTI2NTBhYzU2NGMwZWFjODdlOTY5OTRhNDA2ZmQvdGFibGVyYW5nZTpmNDcxMjY1MGFjNTY0YzBlYWM4N2U5Njk5NGE0MDZmZF8xLTItMS0xLTE2NjM0_36c2144c-acd2-496d-98f7-f83563e2d369">NYSE</dei:SecurityExchangeName>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i3abc9187ac3c4c48b21f060d91286331_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8xMDk5NTExNjMwNTUz_8743a165-23c7-4a8a-9886-e9280f903c13"
      unitRef="shares">5369099</dei:EntityCommonStockSharesOutstanding>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="ia27044eae30b4a0e961c11a4a6f851ff_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xL2ZyYWc6MjM2YjE1MDgwYTBhNDFlMGJkMDEzZGI4NjM0MDhiMmQvdGV4dHJlZ2lvbjoyMzZiMTUwODBhMGE0MWUwYmQwMTNkYjg2MzQwOGIyZF8xMDk5NTExNjMwNTU3_76737025-2d3d-4124-b254-064d17a90376"
      unitRef="shares">2045415</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMy0xLTEtMS0xNjYzNA_10e8071c-4cea-4f4d-8259-b3b6381c3e37"
      unitRef="usd">13055000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMy0zLTEtMS0xNjYzNA_a8442e6b-e0c5-4d00-9b85-c4a59d0724af"
      unitRef="usd">24591000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNC0wLTEtMS0xNjYzNC90ZXh0cmVnaW9uOjY3M2JmYjdhOTlhNzRiMWNhMzA4ZDdhNjUzMzg5NzljXzEwOTk1MTE2Mjc5MzA_58f7489c-4fc8-42e3-9170-023fe7d1548a"
      unitRef="usd">1262000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNC0wLTEtMS0xNjYzNC90ZXh0cmVnaW9uOjY3M2JmYjdhOTlhNzRiMWNhMzA4ZDdhNjUzMzg5NzljXzEwOTk1MTE2Mjc5MjQ_b7ddca42-b6c5-4e5a-a790-8490bd6df715"
      unitRef="usd">1174000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ReceivablesNetCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNC0xLTEtMS0xNjYzNA_d3afca9a-bb23-40b3-acf1-2b42444d4732"
      unitRef="usd">43082000</us-gaap:ReceivablesNetCurrent>
    <us-gaap:ReceivablesNetCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNC0zLTEtMS0xNjYzNA_446c7be4-6ae3-4c05-a407-a49cdc3c8e1a"
      unitRef="usd">40923000</us-gaap:ReceivablesNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNS0xLTEtMS0xNjYzNA_13b4b26d-8dca-4d8e-8986-142f4ac2bac0"
      unitRef="usd">28692000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNS0zLTEtMS0xNjYzNA_9f6396f6-89f9-42e9-bf09-c1acb308157c"
      unitRef="usd">23598000</us-gaap:InventoryNet>
    <odc:Prepaidrepairsexpense
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNi0xLTEtMS0xNjYzNA_385a7e08-2cdc-43ae-a007-79e783255eaa"
      unitRef="usd">5964000</odc:Prepaidrepairsexpense>
    <odc:Prepaidrepairsexpense
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNi0zLTEtMS0xNjYzNA_c11e8e49-4d04-4b31-bade-083458911a25"
      unitRef="usd">6088000</odc:Prepaidrepairsexpense>
    <us-gaap:OtherPrepaidExpenseCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNy0xLTEtMS0xNjYzNA_18662a65-2804-4f39-9c5f-a8707aa97724"
      unitRef="usd">6711000</us-gaap:OtherPrepaidExpenseCurrent>
    <us-gaap:OtherPrepaidExpenseCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfNy0zLTEtMS0xNjYzNA_8dc38e94-be87-4c1b-ad58-0da2e7d4dacf"
      unitRef="usd">6742000</us-gaap:OtherPrepaidExpenseCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfOC0xLTEtMS0xNjYzNA_0e7972c7-e5bf-4fcf-99b4-a4ccd78fabfa"
      unitRef="usd">97504000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfOC0zLTEtMS0xNjYzNA_997b4bf1-a087-46fc-87ea-bc088d6e25b3"
      unitRef="usd">101942000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTEtMS0xLTEtMTY2MzQ_8a401904-131d-47d0-a231-cbfc665c589f"
      unitRef="usd">280725000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTEtMy0xLTEtMTY2MzQ_b8a66e0e-cdbd-403d-b88b-1b78197f0caf"
      unitRef="usd">274825000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTItMS0xLTEtMTY2MzQ_fed0c72c-2eed-4eff-b003-4179f9ed6a53"
      unitRef="usd">181968000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTItMy0xLTEtMTY2MzQ_40e394aa-2977-43ee-8925-78b205c46e72"
      unitRef="usd">178885000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTMtMS0xLTEtMTY2MzQ_19672e15-5342-4a80-8948-9d93a2c23316"
      unitRef="usd">98757000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTMtMy0xLTEtMTY2MzQ_57516fff-cb8f-4797-bc4a-11f8578eb0c6"
      unitRef="usd">95940000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTYtMS0xLTEtMTY2MzQ_b3f52c7f-5293-403d-b37b-0178f0e97537"
      unitRef="usd">9262000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTYtMy0xLTEtMTY2MzQ_df13aeee-dcbf-474d-a9dc-688e995e2a2b"
      unitRef="usd">9262000</us-gaap:Goodwill>
    <odc:TrademarksandpatentsaccumulatedAmortization
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTctMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo2MTcwYWEwYTYxMmI0OTZiYmM0NGYwMDA0MmNhNDdmZV8xMDk5NTExNjI3OTQw_ddea03c4-d2d5-4c73-b59d-aacbe9077f74"
      unitRef="usd">421000</odc:TrademarksandpatentsaccumulatedAmortization>
    <odc:TrademarksandpatentsaccumulatedAmortization
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTctMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo2MTcwYWEwYTYxMmI0OTZiYmM0NGYwMDA0MmNhNDdmZV8xMDk5NTExNjI3OTM0_6ab798ee-1b15-4edc-9622-39280adecda8"
      unitRef="usd">385000</odc:TrademarksandpatentsaccumulatedAmortization>
    <odc:Trademarksandpatentsnet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTctMS0xLTEtMTY2MzQ_ffd1b146-5825-47ab-bf22-689168345b3f"
      unitRef="usd">1768000</odc:Trademarksandpatentsnet>
    <odc:Trademarksandpatentsnet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTctMy0xLTEtMTY2MzQ_91da6302-f526-40a5-bbf3-0f242cb42faa"
      unitRef="usd">1743000</odc:Trademarksandpatentsnet>
    <odc:Customerlistaccumulatedamortization
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTgtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjpmOGNmNjMzM2RjYTQ0MzkxOWQ5NDZiZjFlMWQzMGEyMF8xMDk5NTExNjI3OTQ2_2c3f5ec8-29de-4903-bcef-e697a7027600"
      unitRef="usd">7392000</odc:Customerlistaccumulatedamortization>
    <odc:Customerlistaccumulatedamortization
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTgtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjpmOGNmNjMzM2RjYTQ0MzkxOWQ5NDZiZjFlMWQzMGEyMF8xMDk5NTExNjI3OTM4_2bd21e7a-1347-4e28-add7-7e38272ff99d"
      unitRef="usd">7321000</odc:Customerlistaccumulatedamortization>
    <odc:Customerlistnet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTgtMS0xLTEtMTY2MzQ_44cd6bc5-5797-4d70-8d9a-84d0a251dfc1"
      unitRef="usd">393000</odc:Customerlistnet>
    <odc:Customerlistnet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTgtMy0xLTEtMTY2MzQ_031c60bc-bec1-4e7c-aae2-2da0a952d8d8"
      unitRef="usd">464000</odc:Customerlistnet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTktMS0xLTEtMTY2MzQ_9d168b82-8ebd-4fc3-a7e1-35cbab4a795e"
      unitRef="usd">1895000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMTktMy0xLTEtMTY2MzQ_d5118dfc-160b-42d3-8ae8-63a32abe8253"
      unitRef="usd">2096000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjAtMS0xLTEtMTY2MzQ_2b42efbd-e73e-441f-ba72-f3f3988e4d18"
      unitRef="usd">8110000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjAtMy0xLTEtMTY2MzQ_04f3ed5b-1c49-426b-9cd7-f48de30c5eb3"
      unitRef="usd">8619000</us-gaap:OperatingLeaseRightOfUseAsset>
    <odc:OtherNoncurrentAssets
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjEtMS0xLTEtMTY2MzQ_1ccaf89b-5bb6-4961-9651-4dc98a2116a6"
      unitRef="usd">6199000</odc:OtherNoncurrentAssets>
    <odc:OtherNoncurrentAssets
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjEtMy0xLTEtMTY2MzQ_c4dcf3af-737a-47fa-9979-b911ecb2e313"
      unitRef="usd">7500000</odc:OtherNoncurrentAssets>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjItMS0xLTEtMTY2MzQ_7be37ca4-3d8f-4442-9f77-3c39c0546e0b"
      unitRef="usd">27627000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjItMy0xLTEtMTY2MzQ_3d57b2be-9594-4797-a235-a894b05a0281"
      unitRef="usd">29684000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjQtMS0xLTEtMTY2MzQ_79786055-fc33-4f7e-a84c-7c33f8d49469"
      unitRef="usd">223888000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmI0ZTk5NTQ3ZDk4MjQyNjRhMDU4OTdkMDk5YWM5YzFjL3RhYmxlcmFuZ2U6YjRlOTk1NDdkOTgyNDI2NGEwNTg5N2QwOTlhYzljMWNfMjQtMy0xLTEtMTY2MzQ_941d22e5-d8dd-4ac3-858b-9be8e7e2defe"
      unitRef="usd">227566000</us-gaap:Assets>
    <us-gaap:SeniorNotesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMy0xLTEtMS0xNjYzNA_1b58a026-925c-4d77-b0b2-1ab865c5f512"
      unitRef="usd">1000000</us-gaap:SeniorNotesCurrent>
    <us-gaap:SeniorNotesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMy0zLTEtMS0xNjYzNA_3820f020-832b-40e0-a62d-77c8769632c8"
      unitRef="usd">1000000</us-gaap:SeniorNotesCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNC0xLTEtMS0xNjYzNA_41ccc0cb-c03a-43fe-a39c-348321ae1da2"
      unitRef="usd">10173000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNC0zLTEtMS0xNjYzNA_069a3f40-d862-42be-9f8d-b7a2c8e38c37"
      unitRef="usd">9206000</us-gaap:AccountsPayableCurrent>
    <us-gaap:DividendsPayableCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNS0xLTEtMS0xNjYzNA_6a0255dd-6502-4513-b6ed-7d60e8cf6ac8"
      unitRef="usd">1864000</us-gaap:DividendsPayableCurrent>
    <us-gaap:DividendsPayableCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNS0zLTEtMS0xNjYzNA_03dc19d1-7283-4302-a0a5-e2acc859df85"
      unitRef="usd">1865000</us-gaap:DividendsPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNi0xLTEtMS0xNjYzNA_aacc4fb5-68cc-4c11-aa17-34496d1d6981"
      unitRef="usd">1723000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNi0zLTEtMS0xNjYzNA_fb721bfa-fffc-41ed-9613-566a0976aaf6"
      unitRef="usd">2036000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNy0xLTEtMS0xNjYzNA_dc32f3ca-589e-497a-820a-52246dbe0a5d"
      unitRef="usd">23746000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfNy0zLTEtMS0xNjYzNA_45416cd6-603e-47d0-ad1a-e222776f0cfe"
      unitRef="usd">24883000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfOC0xLTEtMS0xNjYzNA_6fdb54ed-33d8-44e8-9078-79fe6438b2e3"
      unitRef="usd">38506000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfOC0zLTEtMS0xNjYzNA_25107a5b-0623-4f51-a975-217f941d647d"
      unitRef="usd">38990000</us-gaap:LiabilitiesCurrent>
    <us-gaap:DeferredFinanceCostsNoncurrentNet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjpmOWZlMDMyYmIxN2I0MmUxYjU0OTVkNTk3YWYyYTgxM18xMDk5NTExNjI3OTQ0_8b5577de-cd68-4cbf-b84f-db12f132d3a5"
      unitRef="usd">116000</us-gaap:DeferredFinanceCostsNoncurrentNet>
    <us-gaap:DeferredFinanceCostsNoncurrentNet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjpmOWZlMDMyYmIxN2I0MmUxYjU0OTVkNTk3YWYyYTgxM18xMDk5NTExNjI3OTM4_4d502fe3-6dfe-4f99-b6b7-6b52354481f8"
      unitRef="usd">122000</us-gaap:DeferredFinanceCostsNoncurrentNet>
    <us-gaap:SeniorLongTermNotes
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTEtMS0xLTEtMTY2MzQ_0ff7ace1-ce31-43b1-bdee-0539b2ee54f1"
      unitRef="usd">7884000</us-gaap:SeniorLongTermNotes>
    <us-gaap:SeniorLongTermNotes
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTEtMy0xLTEtMTY2MzQ_6a4f005e-d33e-459f-848c-b4684516d89a"
      unitRef="usd">7878000</us-gaap:SeniorLongTermNotes>
    <us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTItMS0xLTEtMTY2MzQ_3b145987-661f-4931-a148-be06f98fffd7"
      unitRef="usd">4612000</us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent>
    <us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTItMy0xLTEtMTY2MzQ_2fe9b93e-c84c-47df-807a-b5fdb9bad858"
      unitRef="usd">4370000</us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTMtMS0xLTEtMTY2MzQ_62f17645-1a69-4d0d-8ec8-5e26ee29054f"
      unitRef="usd">4592000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent>
    <us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTMtMy0xLTEtMTY2MzQ_a33107b3-ff22-49ad-8ea0-7edc23dd1880"
      unitRef="usd">4922000</us-gaap:PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTQtMS0xLTEtMTY2MzQ_80a49111-8eb9-482b-8d42-afbc592a6b12"
      unitRef="usd">7807000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTQtMy0xLTEtMTY2MzQ_b37e44ab-3b43-4ce2-9b58-c32ef2aeff47"
      unitRef="usd">8022000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTUtMS0xLTEtMTY2MzQ_06c8d022-cfde-44e2-b04a-4a7839953879"
      unitRef="usd">4186000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTUtMy0xLTEtMTY2MzQ_a0fc7408-d995-4a82-8350-e661f2f65479"
      unitRef="usd">4152000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTYtMS0xLTEtMTY2MzQ_370e04ed-1597-4eb9-b460-dd5527097c7d"
      unitRef="usd">29081000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTYtMy0xLTEtMTY2MzQ_d7f8f4ef-d79d-4b38-9bd6-0b467f521026"
      unitRef="usd">29344000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTgtMS0xLTEtMTY2MzQ_1b30c61a-fcb4-4c5d-9b48-b030bac0560a"
      unitRef="usd">67587000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMTgtMy0xLTEtMTY2MzQ_311e8e39-f909-421b-a0ca-3efed520c567"
      unitRef="usd">68334000</us-gaap:Liabilities>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i3abc9187ac3c4c48b21f060d91286331_I20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo3Mzc5N2IzNDUxZTE0MDY1ODE3YzI4MWIxM2I5MDE2Ml8xMDk5NTExNjI3OTYy_4e209884-5470-4e23-ae4d-0be887aff0a5"
      unitRef="usdPerShare">0.10</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ifaef54edef1043faab5c16926e4deb71_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo3Mzc5N2IzNDUxZTE0MDY1ODE3YzI4MWIxM2I5MDE2Ml8xMDk5NTExNjI3OTYy_a130c3ef-00be-4ff7-b103-c50b94415e4b"
      unitRef="usdPerShare">0.10</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesIssued
      contextRef="i3abc9187ac3c4c48b21f060d91286331_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo3Mzc5N2IzNDUxZTE0MDY1ODE3YzI4MWIxM2I5MDE2Ml8xMDk5NTExNjI3OTU2_a8dd2a5d-8386-44d2-9b1b-ee3079702a1f"
      unitRef="shares">8635968</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="ifaef54edef1043faab5c16926e4deb71_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo3Mzc5N2IzNDUxZTE0MDY1ODE3YzI4MWIxM2I5MDE2Ml8xMDk5NTExNjI3OTQ0_e497c204-f191-4bc4-809e-7ceca5d67f9b"
      unitRef="shares">8561311</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="i3abc9187ac3c4c48b21f060d91286331_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjEtMS0xLTEtMTY2MzQ_8479de1d-1fc4-4931-91ed-41e334bf2da5"
      unitRef="usd">863000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="ifaef54edef1043faab5c16926e4deb71_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjEtMy0xLTEtMTY2MzQ_47ed72b8-5c12-4c1d-a94d-a4d34a4f5ad9"
      unitRef="usd">856000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i4b507406ca6747cda88f10f39639aa98_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjItMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjphMDNjNGJjYzM1Mjc0ZjQyYjY3OTNmZWQxYjk1YjU2Yl8xMDk5NTExNjI3OTY0_62e30738-da7a-40da-bd22-47a7599f9e8b"
      unitRef="usdPerShare">0.10</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ia27044eae30b4a0e961c11a4a6f851ff_I20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjItMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjphMDNjNGJjYzM1Mjc0ZjQyYjY3OTNmZWQxYjk1YjU2Yl8xMDk5NTExNjI3OTY0_d8a46cc6-cfa0-456e-999e-87bd535832d4"
      unitRef="usdPerShare">0.10</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesIssued
      contextRef="ia27044eae30b4a0e961c11a4a6f851ff_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjItMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjphMDNjNGJjYzM1Mjc0ZjQyYjY3OTNmZWQxYjk1YjU2Yl8xMDk5NTExNjI3OTU4_bf3c7a13-5c5a-4e49-aca1-fc6d2dd74822"
      unitRef="shares">2397056</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4b507406ca6747cda88f10f39639aa98_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjItMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjphMDNjNGJjYzM1Mjc0ZjQyYjY3OTNmZWQxYjk1YjU2Yl8xMDk5NTExNjI3OTQ2_1fe13071-ad13-4e3a-b08f-520c37cb23d9"
      unitRef="shares">2397056</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="ia27044eae30b4a0e961c11a4a6f851ff_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjItMS0xLTEtMTY2MzQ_e2fc7e29-6b07-4f16-9cf9-0285008675d0"
      unitRef="usd">240000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i4b507406ca6747cda88f10f39639aa98_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjItMy0xLTEtMTY2MzQ_6924dd53-6264-4426-b25c-c96a72ada5e8"
      unitRef="usd">240000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjMtMS0xLTEtMTY2MzQ_c69eabaa-8f5a-4b7e-a349-27a31378ee43"
      unitRef="usd">49377000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjMtMy0xLTEtMTY2MzQ_a3666a27-a884-4aff-a56c-31fea8467393"
      unitRef="usd">48271000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjQtMS0xLTEtMTY2MzQ_748e5c95-d57e-4bce-9647-5e85f2b2caa1"
      unitRef="usd">179164000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjQtMy0xLTEtMTY2MzQ_2033ebcc-79f9-4992-9a4c-76615dfb4a28"
      unitRef="usd">180443000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:MinorityInterest
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjUtMS0xLTEtMTY2MzQ_f58ed9a8-c41d-4f05-8aff-312a28b90c18"
      unitRef="usd">-297000</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjUtMy0xLTEtMTY2MzQ_d0bf3882-b9c9-41fa-a621-918340984928"
      unitRef="usd">-307000</us-gaap:MinorityInterest>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjgtMS0xLTEtMTY2MzQ_ab0b240e-65de-47e8-8d91-044b3bb3228e"
      unitRef="usd">4401000</us-gaap:AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjgtMy0xLTEtMTY2MzQ_25a34424-6a37-476d-8369-be0095469724"
      unitRef="usd">4428000</us-gaap:AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjktMS0xLTEtMTY2MzQ_56fda309-29b6-42ee-9335-8ec3245fc2bf"
      unitRef="usd">277000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMjktMy0xLTEtMTY2MzQ_62265b61-ce82-4203-a600-3ecedeee34b9"
      unitRef="usd">311000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzAtMS0xLTEtMTY2MzQ_6ebbb93f-ab10-4f26-87e8-3223e4b48383"
      unitRef="usd">-4124000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzAtMy0xLTEtMTY2MzQ_b7f22053-4ad5-40b5-9ad6-e52965deda88"
      unitRef="usd">-4117000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:TreasuryStockShares
      contextRef="i3abc9187ac3c4c48b21f060d91286331_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo1MTFiN2VjNjM5OTM0MzFlOWY0NzliZjRjYTVjMTA2MV8xMDk5NTExNjI4MDAy_ba8e7e2d-7b86-47fe-aded-6c35b67707ec"
      unitRef="shares">3266869</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="ia27044eae30b4a0e961c11a4a6f851ff_I20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo1MTFiN2VjNjM5OTM0MzFlOWY0NzliZjRjYTVjMTA2MV8xMDk5NTExNjI4MDEy_0b16f79e-2e3b-4842-9618-9715dbc724ee"
      unitRef="shares">351641</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="ifaef54edef1043faab5c16926e4deb71_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo1MTFiN2VjNjM5OTM0MzFlOWY0NzliZjRjYTVjMTA2MV8xMDk5NTExNjI3OTgw_98ce1a1b-011a-4e42-90eb-61206dd63261"
      unitRef="shares">3192702</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="i4b507406ca6747cda88f10f39639aa98_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzEtMC0xLTEtMTY2MzQvdGV4dHJlZ2lvbjo1MTFiN2VjNjM5OTM0MzFlOWY0NzliZjRjYTVjMTA2MV8xMDk5NTExNjI3OTkw_72fdce91-588f-4a61-b7c9-d67f88372485"
      unitRef="shares">346491</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzEtMS0xLTEtMTY2MzQ_4cf06aa2-3427-4543-8a5f-fab32db04c27"
      unitRef="usd">68922000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzEtMy0xLTEtMTY2MzQ_b47e658d-60a7-4b87-8098-0f4b41967291"
      unitRef="usd">66154000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzItMS0xLTEtMTY2MzQ_81e38960-4398-47fe-a911-eae8d62ee13b"
      unitRef="usd">156301000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzItMy0xLTEtMTY2MzQ_7c9b6b4b-faac-4ac7-b795-5e61664f55bb"
      unitRef="usd">159232000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzQtMS0xLTEtMTY2MzQ_754c29bd-9410-43af-bc6c-942f2f325e10"
      unitRef="usd">223888000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8xNi9mcmFnOmQ5MWYxNzU3NmNmZTRhNmM5OGI0ZGVkMGEyMjAwNDkyL3RhYmxlOmNlNzU1MjAxNzljYjQyNTdhZjgwMjMwNzQ1Njg5MTYyL3RhYmxlcmFuZ2U6Y2U3NTUyMDE3OWNiNDI1N2FmODAyMzA3NDU2ODkxNjJfMzQtMy0xLTEtMTY2MzQ_6aa5f169-2404-42a3-837c-424a283fbd5a"
      unitRef="usd">227566000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNC0xLTEtMS0xNjYzNA_ce092615-8c30-40b2-9de1-bb0d9b9a9126"
      unitRef="usd">82460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNC0zLTEtMS0xNjYzNA_2e560e50-12ba-4f5f-ac9d-3c61d85a7da2"
      unitRef="usd">76097000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNS0xLTEtMS0xNjYzNA_65ed5c57-ff5e-4486-932e-c2b27aaccb2c"
      unitRef="usd">68642000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNS0zLTEtMS0xNjYzNA_9fc06805-5cb1-4a1e-aa52-9931c9204534"
      unitRef="usd">57317000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNi0xLTEtMS0xNjYzNA_2c5e8804-0226-402e-9d03-b8ca6e24a73a"
      unitRef="usd">13818000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNi0zLTEtMS0xNjYzNA_be33c44a-44b6-43e6-9450-92392d0f4954"
      unitRef="usd">18780000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNy0xLTEtMS0xNjYzNA_0d61a226-d13b-4476-b908-fb87b3c7cee9"
      unitRef="usd">13373000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfNy0zLTEtMS0xNjYzNA_714f6d65-7b0d-4890-b32e-fe6cf568ace3"
      unitRef="usd">13603000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfOC0xLTEtMS0xNjYzNA_77a90067-1414-4303-85fa-0d7fa07bbdd1"
      unitRef="usd">445000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfOC0zLTEtMS0xNjYzNA_fb8a67b7-e1c4-4de5-ac13-2a6d7d9301b2"
      unitRef="usd">5177000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpenseDebt
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTEtMS0xLTEtMTY2MzQ_e29d9bce-33ab-4d3d-affb-0b1a45fa9972"
      unitRef="usd">177000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTEtMy0xLTEtMTY2MzQ_601dced2-eeaf-4222-98eb-25c5ce5f417d"
      unitRef="usd">192000</us-gaap:InterestExpenseDebt>
    <us-gaap:InvestmentIncomeInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTItMS0xLTEtMTY2MzQ_db8ef7ea-66e8-443f-88e9-cd404432b1d4"
      unitRef="usd">9000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTItMy0xLTEtMTY2MzQ_f6369745-1671-442d-b04a-0cc3dd0d7ec0"
      unitRef="usd">25000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTMtMS0xLTEtMTY2MzQ_f6226fbf-4adc-4e79-9a17-86d8e9af8937"
      unitRef="usd">433000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTMtMy0xLTEtMTY2MzQ_8d93a2ed-d494-4c35-baba-6dbf37274bbd"
      unitRef="usd">-255000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTQtMS0xLTEtMTY2MzQ_275cb78c-bcd9-4053-9376-551ea7c12408"
      unitRef="usd">265000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTQtMy0xLTEtMTY2MzQ_b000b6c4-467a-4cf4-b03d-c544b9060eca"
      unitRef="usd">-422000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTYtMS0xLTEtMTY2MzQ_75c8b029-b129-4da9-aeb2-5dd4ce9a1531"
      unitRef="usd">710000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTYtMy0xLTEtMTY2MzQ_eb375600-5e05-4d3b-8291-ead245866771"
      unitRef="usd">4755000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTctMS0xLTEtMTY2MzQ_ebe18926-d918-4ab7-9314-9f1b4736bd36"
      unitRef="usd">115000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTctMy0xLTEtMTY2MzQ_75f3d375-2169-444b-a973-5261aabb267e"
      unitRef="usd">806000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTgtMS0xLTEtMTY2MzQ_85bd0be6-abab-4ec6-bec3-50f0670115b7"
      unitRef="usd">595000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTgtMy0xLTEtMTY2MzQ_a9398882-3e6a-4334-a937-f019561c7dca"
      unitRef="usd">3949000</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTktMS0xLTEtMTY2MzQ_fa63ad67-2892-4606-a214-62dc826f1502"
      unitRef="usd">10000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMTktMy0xLTEtMTY2MzQ_22b37266-ff94-4638-962b-ec18b2bd5394"
      unitRef="usd">-35000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjAtMS0xLTEtMTY2MzQ_6d996703-6f3d-45f8-8996-937affc5eec0"
      unitRef="usd">585000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjAtMy0xLTEtMTY2MzQ_b4bf6405-9231-4299-8c5f-eaf66a2dcb0f"
      unitRef="usd">3984000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjMtMS0xLTEtMTY2MzQ_2e3a6e55-f822-403b-ba1c-1c4d91874ae1"
      unitRef="usdPerShare">0.08</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjMtMy0xLTEtMTY2MzQ_d98ebd6d-84b3-49f1-bf7b-4a24cfa4d7b3"
      unitRef="usdPerShare">0.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjQtMS0xLTEtMTY2MzQ_e25fcc98-b210-4de7-aeb2-633ad82e34e3"
      unitRef="usdPerShare">0.07</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjQtMy0xLTEtMTY2MzQ_158ab937-42f8-4978-992c-db04d74ac8f2"
      unitRef="usdPerShare">0.43</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjUtMS0xLTEtMTY2MzQ_abb71cc4-8647-4230-ab94-fd936469f639"
      unitRef="usdPerShare">0.08</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjUtMy0xLTEtMTY2MzQ_c95bfcaa-4ab7-4eb3-9244-0eead5de5ab6"
      unitRef="usdPerShare">0.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjYtMS0xLTEtMTY2MzQ_b47fef4d-ae7b-439b-a61c-5fd74ea10579"
      unitRef="usdPerShare">0.06</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjYtMy0xLTEtMTY2MzQ_7d1f4de3-3390-4c47-8021-cfd8591ca1df"
      unitRef="usdPerShare">0.42</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjgtMS0xLTEtMTY2MzQ_6ffc6ba2-85d1-40eb-8908-43dcaf12c82d"
      unitRef="shares">5113000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjgtMy0xLTEtMTY2MzQ_3d3bb289-4dc5-4d01-b39b-7541aecddee6"
      unitRef="shares">5149000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjktMS0xLTEtMTY2MzQ_d5a5d7d1-0850-4d6d-978f-92e0076752a9"
      unitRef="shares">1921000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMjktMy0xLTEtMTY2MzQ_1040d4ba-2e74-4a61-bd35-12ea46d9bdcc"
      unitRef="shares">1926000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzAtMS0xLTEtMTY2MzQ_c0d7c2a4-506d-443a-9f35-de81ade33d45"
      unitRef="shares">5237000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzAtMy0xLTEtMTY2MzQ_150bcf3c-85dd-43bc-a42b-c9aae5dbb2d5"
      unitRef="shares">5276000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzEtMS0xLTEtMTY2MzQ_44903edb-81b1-4d25-8889-3c5dfe673b07"
      unitRef="shares">1967000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzEtMy0xLTEtMTY2MzQ_524a0ed5-de51-421e-98f3-dd2cec43fe4c"
      unitRef="shares">1978000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="ie9e64391a19b4eeea18a0b6977d186e8_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzMtMS0xLTEtMTY2MzQ_038720df-05ad-4438-b7ad-97302ab40226"
      unitRef="usdPerShare">0.2700</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i39d6abe6e9394cd2be7bc52a43ccf43f_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzMtMy0xLTEtMTY2MzQ_73963f04-0872-44af-ad6b-f20f1086671c"
      unitRef="usdPerShare">0.2600</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="ib9f417b31e0c4be48667c18e6d7d18f9_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzQtMS0xLTEtMTY2MzQ_7ef8d4e4-e05e-46dd-bebd-72ff965069ad"
      unitRef="usdPerShare">0.2025</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="if75e194e0d0f4332af61caf0affc05dd_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yMi9mcmFnOjA0NTk3ZmIyZmY1NzRjOWE5ZGI2NTM2MWNjMDNkYzY5L3RhYmxlOjRmMGQ4Yzk3NDZmMzQ5NTY5OGYyZTgwZjVmNzNkMWY4L3RhYmxlcmFuZ2U6NGYwZDhjOTc0NmYzNDk1Njk4ZjJlODBmNWY3M2QxZjhfMzQtMy0xLTEtMTY2MzQ_57c4a7d4-c0b5-4f2a-a02b-79b2955d98ed"
      unitRef="usdPerShare">0.1950</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:NetIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfNC0xLTEtMS0xNjYzNA_6d996703-6f3d-45f8-8996-937affc5eec0"
      unitRef="usd">585000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfNC0zLTEtMS0xNjYzNA_b16983ba-051b-480d-a616-d9b5d9d1c866"
      unitRef="usd">3984000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfOC0xLTEtMS0xNjYzNA_4de770c5-b5c2-4df8-b372-65a38dfaeece"
      unitRef="usd">-27000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfOC0zLTEtMS0xNjYzNA_2e45840e-4da8-476c-b0c5-0c0a1f30f1ca"
      unitRef="usd">-128000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfOS0xLTEtMS0xNjYzNA_f738a792-45ad-41e4-8ff2-a0f41823768f"
      unitRef="usd">-34000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfOS0zLTEtMS0xNjYzNA_d32bccd7-edb7-4e44-8e9c-8a7ab9f2a418"
      unitRef="usd">272000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfMTAtMS0xLTEtMTY2MzQ_b2e056d3-58aa-4d26-8f95-087a7f37d12a"
      unitRef="usd">-7000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfMTAtMy0xLTEtMTY2MzQ_a2862ad3-0197-4d8b-b8cc-c2e7edf3474c"
      unitRef="usd">400000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfMTEtMS0xLTEtMTY2MzQ_b19f31b8-0432-480d-bcb6-27d1a18e41d1"
      unitRef="usd">578000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8yNS9mcmFnOmRlMjMzZjQ4ZDkwOTQ0OGI4M2YxYTFmZTI2YjYyOTEyL3RhYmxlOjFjYmFkOTQxOTY0MTQ0Zjg5NGU1MmI4OWRkZDI3ODIxL3RhYmxlcmFuZ2U6MWNiYWQ5NDE5NjQxNDRmODk0ZTUyYjg5ZGRkMjc4MjFfMTEtMy0xLTEtMTY2MzQ_98530c8f-3160-4983-b1e0-dbaf12b4821c"
      unitRef="usd">4384000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ia1f3054c59d7403090c0645bc4f62ecd_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS0xLTEtMS0xNjYzNA_dcfd3b02-6fc4-4c83-93a3-787857cbe75f"
      unitRef="shares">10886405</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:TreasuryStockCommonShares
      contextRef="ia31a6ac5fc2043f687eaf1749a6cb8d9_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS0zLTEtMS0xNjYzNA_c73f1311-cd91-4ecb-a840-d5093836e98a"
      unitRef="shares">-3426046</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ia1f3054c59d7403090c0645bc4f62ecd_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS01LTEtMS0xNjYzNA_2ffd04dc-46d7-456f-a3d4-feba77499418"
      unitRef="usd">1089000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="id85507897a88418d8f30767663e2c555_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS03LTEtMS0xNjYzNA_fa1ed9ca-45ad-473e-9da0-d4e752c93f71"
      unitRef="usd">44993000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i377ab695ac614e1fb2001580764287ce_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS05LTEtMS0xNjYzNA_e0871fbf-3ab2-40d9-8f1a-e3d9a0957fdc"
      unitRef="usd">176579000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ia31a6ac5fc2043f687eaf1749a6cb8d9_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS0xMy0xLTEtMTY2MzQ_e8df8254-d25b-4ade-8b22-6e943f88ae02"
      unitRef="usd">-62269000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i2af578346a8147ef9069d08d0b3fb7a7_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS0xNS0xLTEtMTY2MzQ_6d19d9f0-5c70-4c98-a4bd-fe32603385c4"
      unitRef="usd">-12254000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i0697e2e0c13d4fb5a463c2bc33f0a3f4_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS0xNy0xLTEtMTY2MzQ_cac95800-c00d-420a-bf5a-3b312467e2b4"
      unitRef="usd">-174000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i75127e4c02274447be8da394da52e7a6_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNS0xOS0xLTEtMTY2MzQ_107acddd-0a76-4c2c-9610-8986fbeafefa"
      unitRef="usd">147964000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi01LTEtMS0xNjYzNA_8ef4f04d-dc9c-4657-9ead-fd8eb3f6e253"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="id018511c70a649878dfc543d5ef943dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi03LTEtMS0xNjYzNA_634402a8-a766-4607-b4b3-91b963c9d1ae"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi05LTEtMS0xNjYzNA_f05d6482-b12d-461d-a383-1a33773827ef"
      unitRef="usd">3984000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi0xMy0xLTEtMTY2MzQ_bd55f481-12ae-41db-9921-90886dcd7633"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi0xNS0xLTEtMTY2MzQ_7fe56912-839f-499c-881e-4d08039a6836"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi0xNy0xLTEtMTY2MzQ_dc05d079-3fc2-4452-9f4b-8916a0e445db"
      unitRef="usd">-35000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNi0xOS0xLTEtMTY2MzQ_0efe8bd7-cbc9-49a7-bc14-575fd489af32"
      unitRef="usd">3949000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy01LTEtMS0xNjYzNA_db4882f2-8a33-4831-b32c-89877eba3b05"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="id018511c70a649878dfc543d5ef943dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy03LTEtMS0xNjYzNA_cf33b839-f1c3-4e72-a031-7e15b66e7fb2"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy05LTEtMS0xNjYzNA_9a033969-3e09-4499-a740-a7c36de15ace"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy0xMy0xLTEtMTY2MzQ_a5e069a7-e952-4e80-becb-3c4e60d079bc"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy0xNS0xLTEtMTY2MzQ_f5cac1ee-8677-470f-916d-533fe4d24ca1"
      unitRef="usd">400000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy0xNy0xLTEtMTY2MzQ_3544e150-ee11-438a-8476-af12a3128f23"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfNy0xOS0xLTEtMTY2MzQ_d99ae21f-e18f-4ff5-bfc7-aedef812221e"
      unitRef="usd">400000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:DividendsCommonStockCash
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC01LTEtMS0xNjYzNA_e9717a35-93e9-43da-9b21-d1a882bd4332"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="id018511c70a649878dfc543d5ef943dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC03LTEtMS0xNjYzNA_1c231afb-f9b8-46af-b123-5abc2eee947e"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC05LTEtMS0xNjYzNA_2d81122a-358b-4d1a-92a7-d65946fa2f64"
      unitRef="usd">1802000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC0xMy0xLTEtMTY2MzQ_1cedde27-2321-4b9d-8796-3ff861a5966e"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC0xNS0xLTEtMTY2MzQ_04778e8e-c088-40e6-93a1-5a18a3b0901d"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC0xNy0xLTEtMTY2MzQ_2994ab3f-c7ad-4ca7-b78c-1e81b6f24ab7"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOC0xOS0xLTEtMTY2MzQ_d218cb9c-cf33-4c75-b1be-4992e481475d"
      unitRef="usd">1802000</us-gaap:DividendsCommonStockCash>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS0zLTEtMS0xNjYzNA_db8ad704-8f6a-4d25-bf7a-2b997889f794"
      unitRef="shares">26993</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS01LTEtMS0xNjYzNA_a17e016f-4563-428c-92ea-1a96c32561a9"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="id018511c70a649878dfc543d5ef943dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS03LTEtMS0xNjYzNA_ea6462a2-29b6-4585-80ee-ae6b7c6121f5"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS05LTEtMS0xNjYzNA_86e2d771-5c58-4e98-86cf-aea0048d74e5"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS0xMy0xLTEtMTY2MzQ_11d50701-082a-4ec2-992b-84b3b989d158"
      unitRef="usd">-978000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS0xNS0xLTEtMTY2MzQ_033cd16a-92e2-46ba-8f75-07dc661e7592"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS0xNy0xLTEtMTY2MzQ_48079421-74e4-42dc-a77e-c146cce316f3"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfOS0xOS0xLTEtMTY2MzQ_41142501-be4b-440c-9122-6d3159933c11"
      unitRef="usd">978000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtMS0xLTEtMTY2MzQ_7859e510-b247-4003-99f5-d34fa99dcbe9"
      unitRef="shares">33212</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtMy0xLTEtMTY2MzQ_384fd440-d60d-483d-af0b-f07c1ecf405c"
      unitRef="shares">200</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtNS0xLTEtMTY2MzQ_c30a5f71-4c46-4c69-bbb8-7aeba15ff1e5"
      unitRef="usd">3000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="id018511c70a649878dfc543d5ef943dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtNy0xLTEtMTY2MzQ_4abae919-8236-461e-9960-f1b9a20be8ee"
      unitRef="usd">2000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtOS0xLTEtMTY2MzQ_e603edc0-b560-4a48-b6b7-bc4425eaac18"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtMTMtMS0xLTE2NjM0_71f3457e-b41e-43d8-9d1d-33cd7b98bf10"
      unitRef="usd">6000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtMTUtMS0xLTE2NjM0_dfa9a469-835e-4ae8-a9bb-8d91039c6a8e"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtMTctMS0xLTE2NjM0_c58cf28a-9bb7-4abd-adbb-1585e02f849e"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTAtMTktMS0xLTE2NjM0_4db66f53-8406-48ab-bfd2-d0006cccf50e"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i74096a1498074b0d8fb989e5fad1b260_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtNS0xLTEtMTY2MzQ_3c3642d9-5ec8-4a28-9208-435ee8dc116f"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="id018511c70a649878dfc543d5ef943dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtNy0xLTEtMTY2MzQ_330dd57d-6696-46db-9dab-7bdbcd95ce14"
      unitRef="usd">784000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i13b3f32ff7664afd83b7527a8d6bb7eb_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtOS0xLTEtMTY2MzQ_b0e3fff7-931c-4cba-b49e-a55e112e180f"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="icf3aba3caa604edebd8543a80e772c28_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtMTMtMS0xLTE2NjM0_9f602f15-4c5f-486e-bddd-f2f3fa683d7e"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i6edd5274e3844ee0995d9f776b3552dd_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtMTUtMS0xLTE2NjM0_e56a6307-7b57-4826-96cb-8db1e4aa85df"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i35fcc31e17194fd3965d27764e79c615_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtMTctMS0xLTE2NjM0_ec170746-8ed9-425c-bd10-e81048e70909"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTEtMTktMS0xLTE2NjM0_92fc7f5a-8f6d-47b5-a3e4-d79605661c0c"
      unitRef="usd">784000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ic3e316d10fa3420ab69d35acd5c43706_I20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtMS0xLTEtMTY2MzQ_0fd7c8f3-7641-498a-864f-0bbfa8010e11"
      unitRef="shares">10919617</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:TreasuryStockCommonShares
      contextRef="ie815fbcb145f4a4b8c223ac540031723_I20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtMy0xLTEtMTY2MzQ_bdcf3838-7142-49f8-ae5a-0695a5fc6a26"
      unitRef="shares">-3453239</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ic3e316d10fa3420ab69d35acd5c43706_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtNS0xLTEtMTY2MzQ_5f17d618-d4d2-46d3-b2bb-5c895960abc8"
      unitRef="usd">1092000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ib0fce794d94e4c05b1214608892d4327_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtNy0xLTEtMTY2MzQ_012f80f5-63e4-40f0-b9e0-b9b7269db8fa"
      unitRef="usd">45779000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ia2a6da67e0da43e8abcb2704358b7bde_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtOS0xLTEtMTY2MzQ_1fddcb6d-1a58-4a15-8e80-b3ec5ef1d550"
      unitRef="usd">178761000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ie815fbcb145f4a4b8c223ac540031723_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtMTMtMS0xLTE2NjM0_fd60bd93-66a8-45ae-a3fd-b9475c215b47"
      unitRef="usd">-63253000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="icb675548450344ad8657be9ef64e8936_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtMTUtMS0xLTE2NjM0_ba05b73e-765d-4303-a1bc-efb381f8dd52"
      unitRef="usd">-11854000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i01a0247ff90f4af2883c0d02e0e9e7dd_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtMTctMS0xLTE2NjM0_35e26877-3c69-4d36-b7eb-a1d2a123a50d"
      unitRef="usd">-209000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i370b1859a1294ff39e5b9a27df1ceff4_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTMtMTktMS0xLTE2NjM0_2afe15fb-6760-4dcd-9922-592d51ab89f6"
      unitRef="usd">150316000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ib1986a33eb424f119fb8fa31c3a517bd_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtMS0xLTEtMTY2MzQ_f38d2bdc-445f-40d9-b4c7-19c3c84b77cc"
      unitRef="shares">10958367</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:TreasuryStockCommonShares
      contextRef="i97314d0bb4004fa88b6c7372750e33a0_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtMy0xLTEtMTY2MzQ_d9aa2219-3500-4300-8637-110c9b6cd920"
      unitRef="shares">-3539193</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ib1986a33eb424f119fb8fa31c3a517bd_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtNS0xLTEtMTY2MzQ_e57eda9b-a479-4d9f-bd12-40fcb1c87076"
      unitRef="usd">1096000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i602640aef8374deca7c1bfb33c0994a0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtNy0xLTEtMTY2MzQ_048ae5b4-1f31-48fd-aad1-67d791dd5650"
      unitRef="usd">48271000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ibeb4345aa42f4ee8ac64d44fd52ac1f4_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtOS0xLTEtMTY2MzQ_85452437-c460-44e1-b460-add151a8e6ce"
      unitRef="usd">180443000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i97314d0bb4004fa88b6c7372750e33a0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtMTMtMS0xLTE2NjM0_975a0ef3-9555-4827-87fc-9ab380897a77"
      unitRef="usd">-66154000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i6e408af424e8466185f11db4bb7ccd49_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtMTUtMS0xLTE2NjM0_ae7c9102-8ac0-4dff-ac67-1ae7973dbf28"
      unitRef="usd">-4117000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ib4bf8235bfc042f29792df42d49d26ff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtMTctMS0xLTE2NjM0_20405ea7-b547-48c4-ac09-fc413d648be7"
      unitRef="usd">-307000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTUtMTktMS0xLTE2NjM0_be7b1380-a41d-4fdf-968a-bae8d346eea9"
      unitRef="usd">159232000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtNS0xLTEtMTY2MzQ_bd5646db-c7ed-4316-829b-ca96eb49ba4b"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtNy0xLTEtMTY2MzQ_871717a2-f166-4913-86dd-f090a424270c"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1d731314b76349078c952f1cc39095db_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtOS0xLTEtMTY2MzQ_677774c5-3aa5-4053-b922-3ba56a3b425c"
      unitRef="usd">585000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtMTMtMS0xLTE2NjM0_6ea10844-0203-4b53-ac43-e39e2446213b"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtMTUtMS0xLTE2NjM0_64314708-f84d-46ed-81a1-0ba390aa1a33"
      unitRef="usd">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="idb65114750e243d09592128bcaad0509_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtMTctMS0xLTE2NjM0_b3ddc7ef-d17b-488c-8596-5c2f84577ebe"
      unitRef="usd">10000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTYtMTktMS0xLTE2NjM0_4edc44fb-43d8-4f7e-b31e-0caf1d614c7b"
      unitRef="usd">595000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctNS0xLTEtMTY2MzQ_1a45f0a8-19fa-44e8-a267-63cbf0496152"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctNy0xLTEtMTY2MzQ_dd407e12-8ddd-4c98-8ac0-a69d7f62ca17"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i1d731314b76349078c952f1cc39095db_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctOS0xLTEtMTY2MzQ_6f27c71b-d9fc-4784-a93b-e6d6ef402c62"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctMTMtMS0xLTE2NjM0_50e13ba3-1d9d-4b48-89db-099f84e1cc11"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctMTUtMS0xLTE2NjM0_7c247d8b-a0f1-4156-81b6-58f68911bfc6"
      unitRef="usd">-7000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="idb65114750e243d09592128bcaad0509_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctMTctMS0xLTE2NjM0_01786876-75a1-41e9-bcd0-52dca523e5bc"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTctMTktMS0xLTE2NjM0_9029e749-bb3c-483d-87e8-1c748f19befe"
      unitRef="usd">-7000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:DividendsCommonStockCash
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtNS0xLTEtMTY2MzQ_9e65868f-7eab-489e-9707-5c9a8e689c9a"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtNy0xLTEtMTY2MzQ_cf4a3410-a54e-408d-b640-9c509582a791"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i1d731314b76349078c952f1cc39095db_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtOS0xLTEtMTY2MzQ_ba9d6416-b703-41fa-9408-875001ad3773"
      unitRef="usd">1864000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtMTMtMS0xLTE2NjM0_52cdf268-3385-4db1-be6a-20a95fb7889d"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtMTUtMS0xLTE2NjM0_cf0fb25e-c2d4-4b1a-826d-f74c018774ef"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="idb65114750e243d09592128bcaad0509_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtMTctMS0xLTE2NjM0_fde25eac-e076-4501-8403-54808afdb1fa"
      unitRef="usd">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTgtMTktMS0xLTE2NjM0_838c5ae0-6751-41f1-a5bc-ecb5c35943bf"
      unitRef="usd">1864000</us-gaap:DividendsCommonStockCash>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktMy0xLTEtMTY2MzQ_6ab9bb5d-5b0f-42ec-98e8-8511986e3dc8"
      unitRef="shares">65767</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktNS0xLTEtMTY2MzQ_2158476d-3907-4a79-9aad-b6544baf7de7"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktNy0xLTEtMTY2MzQ_3e4d07b5-7e84-4a32-9499-4dec89512fa1"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i1d731314b76349078c952f1cc39095db_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktOS0xLTEtMTY2MzQ_3dd8fb33-a25f-47fd-8490-8970d3bb8f77"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktMTMtMS0xLTE2NjM0_79303471-27a2-443b-b828-03e14f6868c7"
      unitRef="usd">-2291000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktMTUtMS0xLTE2NjM0_a727aab9-2b68-4718-8814-e16b636dd0a1"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="idb65114750e243d09592128bcaad0509_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktMTctMS0xLTE2NjM0_6565715f-a5fc-45d4-9a84-aefa0827618c"
      unitRef="usd">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMTktMTktMS0xLTE2NjM0_b1002646-12db-4984-ba09-023f4744aab8"
      unitRef="usd">2291000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtMS0xLTEtMTY2MzQ_fecea6c2-fddd-43f3-8561-8c44465a3d90"
      unitRef="shares">74657</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtMy0xLTEtMTY2MzQ_d8133046-e402-4b19-a75f-503e7d8ae9b1"
      unitRef="shares">13550</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtNS0xLTEtMTY2MzQ_7bfe81fa-f16b-4138-a699-fd3a6427fd5f"
      unitRef="usd">7000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtNy0xLTEtMTY2MzQ_69b6444b-2466-4816-b5f3-3bb202014ff5"
      unitRef="usd">470000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i1d731314b76349078c952f1cc39095db_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtOS0xLTEtMTY2MzQ_4e79ce09-9725-40cd-832b-36148ce1ade7"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtMTMtMS0xLTE2NjM0_edfee92b-7038-4692-8412-15e57e5a60bc"
      unitRef="usd">477000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtMTUtMS0xLTE2NjM0_b8d57d5b-d227-48cc-b248-461f21e4f94d"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="idb65114750e243d09592128bcaad0509_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtMTctMS0xLTE2NjM0_9c9f739c-875d-4ce5-a94b-032b9bdc1caa"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjAtMTktMS0xLTE2NjM0_3507d1dd-3974-402f-b6a2-236dae01c5d6"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i738a48b8c8e5498b9d037d785535ecc5_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtNS0xLTEtMTY2MzQ_4cdb9c92-a698-4f2b-94d4-a07d9540cd4e"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ic72bd2dc73564a87a9d3a6db342d8331_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtNy0xLTEtMTY2MzQ_e4ebe0f1-2175-4bdb-907c-7675b2bb33fb"
      unitRef="usd">636000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i1d731314b76349078c952f1cc39095db_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtOS0xLTEtMTY2MzQ_34620c51-2d22-4ac7-b8c0-4134e76b3be8"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i0d593d10c384488ca8e4aa2ff753767d_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtMTMtMS0xLTE2NjM0_d9b56d3e-11b0-4c82-b8b3-164a5057c0d5"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i33e3a14fb7014cd4a57e4ca01dda9606_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtMTUtMS0xLTE2NjM0_07e64a00-bb09-4292-9db5-3757864e6047"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="idb65114750e243d09592128bcaad0509_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtMTctMS0xLTE2NjM0_b2127b49-61b8-4969-b240-ad65f90c6ff6"
      unitRef="usd">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjEtMTktMS0xLTE2NjM0_ee432011-1ccc-435f-bc60-645b3d352d1e"
      unitRef="usd">636000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i376a5ab73cc249699ea6cf730dc5c7a4_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMS0xLTEtMTY2MzQ_4a1f463d-5f34-40a6-b69b-dceb433c3ee6"
      unitRef="shares">11033024</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i376a5ab73cc249699ea6cf730dc5c7a4_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMS0xLTEtMTY2MzQ_b9d45dc8-fd80-42bf-b2bb-b71cb053442b"
      unitRef="shares">11033024</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:TreasuryStockCommonShares
      contextRef="i1c83d37b40cd466c901d80e001395ffe_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMy0xLTEtMTY2MzQ_c86acc34-dca7-444f-ab41-414cc8a40418"
      unitRef="shares">-3618510</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i376a5ab73cc249699ea6cf730dc5c7a4_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItNS0xLTEtMTY2MzQ_e54b1794-8e27-4418-95c8-24946093e20d"
      unitRef="usd">1103000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i1afcaf42780348558cfbff043bebebba_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItNy0xLTEtMTY2MzQ_e10b4db9-1e35-4d88-be43-b68b8a2ab619"
      unitRef="usd">49377000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i903e6f9d70b041d9893da4d09dc48546_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItOS0xLTEtMTY2MzQ_58022720-e019-4c8f-8fcb-aaf0b97f7afb"
      unitRef="usd">179164000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i1c83d37b40cd466c901d80e001395ffe_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMTMtMS0xLTE2NjM0_bf9867f3-c642-4cea-a7da-483d33de1906"
      unitRef="usd">-68922000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i08fef4565a814beba238f0669d51e646_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMTUtMS0xLTE2NjM0_b7ef36aa-2613-4c24-b0c1-00fbaddc9fed"
      unitRef="usd">-4124000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i2ed030dbf6de4c4e843f2aebd8f80527_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMTctMS0xLTE2NjM0_dcb5bf44-017a-446d-b16c-dc4f711cbf43"
      unitRef="usd">-297000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNC9mcmFnOjcxZjA4NzM5MDZjODQ4MWM4NmYzMTk5ODQ4YTlkODFjL3RhYmxlOjRkN2I1MDY4YjEwYjRmZWM4YjljMzcxMDRmYjZlMDhkL3RhYmxlcmFuZ2U6NGQ3YjUwNjhiMTBiNGZlYzhiOWMzNzEwNGZiNmUwOGRfMjItMTktMS0xLTE2NjM0_90216fab-d2d4-4fb7-bb6b-029da5a2b2ff"
      unitRef="usd">156301000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMy0xLTEtMS0xNjYzNA_85bd0be6-abab-4ec6-bec3-50f0670115b7"
      unitRef="usd">595000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMy0zLTEtMS0xNjYzNA_a9398882-3e6a-4334-a937-f019561c7dca"
      unitRef="usd">3949000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationAmortizationAndAccretionNet
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNS0xLTEtMS0xNjYzNA_ae208d85-f99f-41a5-b991-20db085b9e5a"
      unitRef="usd">3456000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNS0zLTEtMS0xNjYzNA_d5ea5cec-cb55-4932-b1a6-db8a2e6a61ed"
      unitRef="usd">3504000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:ShareBasedCompensation
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNy0xLTEtMS0xNjYzNA_ad0ceb25-c300-4449-a25d-27723cfbf700"
      unitRef="usd">636000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNy0zLTEtMS0xNjYzNA_ed048f7a-7276-456b-a9ab-3cc602a733f7"
      unitRef="usd">784000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfOC0xLTEtMS0yMjA5Mg_1d27257b-6832-469b-bb33-e4ab090bde66"
      unitRef="usd">200000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfOC0zLTEtMS0yMjEwMg_462d655d-627e-4d3f-bfe0-955fd20cc671"
      unitRef="usd">714000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfOS0xLTEtMS0xNjYzNA_4aa1fc71-c9da-4d0b-9ebe-7d7778738d58"
      unitRef="usd">89000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfOS0zLTEtMS0xNjYzNA_db2417f5-d6a8-4ee5-9033-7bf3a51dbf4d"
      unitRef="usd">-60000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTAtMS0xLTEtMTY2MzQ_252b0989-fa60-407c-8cab-b3c1e9a841ec"
      unitRef="usd">-34000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTAtMy0xLTEtMTY2MzQ_793834fc-d27f-4af6-91d5-461689af9ebf"
      unitRef="usd">1000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IncreaseDecreaseInAccountsAndOtherReceivables
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTMtMS0xLTEtMTY2MzQ_405e2299-a586-4ef1-87e6-a777c23e34c0"
      unitRef="usd">2250000</us-gaap:IncreaseDecreaseInAccountsAndOtherReceivables>
    <us-gaap:IncreaseDecreaseInAccountsAndOtherReceivables
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTMtMy0xLTEtMTY2MzQ_43390c80-4610-4598-9595-f81741d2affe"
      unitRef="usd">4196000</us-gaap:IncreaseDecreaseInAccountsAndOtherReceivables>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTQtMS0xLTEtMTY2MzQ_32c82eef-6a37-4a0a-84d1-576108f41233"
      unitRef="usd">5084000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTQtMy0xLTEtMTY2MzQ_c6f3022d-7fe3-4099-b0a4-30f16a9157aa"
      unitRef="usd">-462000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTUtMS0xLTEtMTY2MzQ_3774a08d-e8f5-4426-8c08-2eceff2b393b"
      unitRef="usd">-153000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTUtMy0xLTEtMTY2MzQ_8c2436d1-3d2e-4856-9f19-b69ee0a4c872"
      unitRef="usd">-458000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTYtMS0xLTEtMTY2MzQ_e0715c4a-547c-4b3c-9481-b6a30d7f1f3b"
      unitRef="usd">-186000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTYtMy0xLTEtMTY2MzQ_3ed825d5-141b-43b3-9492-9823d91986fd"
      unitRef="usd">985000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <odc:IncreaseDecreaseInAccountsPayableAndIncomeTaxesPayable
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTgtMS0xLTEtMTY2MzQ_1da5e172-0249-4ce4-be33-fbde8a265f4b"
      unitRef="usd">1251000</odc:IncreaseDecreaseInAccountsPayableAndIncomeTaxesPayable>
    <odc:IncreaseDecreaseInAccountsPayableAndIncomeTaxesPayable
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTgtMy0xLTEtMTY2MzQ_a2bea263-d44b-42bd-9f9f-e54cfe27c8c2"
      unitRef="usd">-1435000</odc:IncreaseDecreaseInAccountsPayableAndIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTktMS0xLTEtMTY2MzQ_fd00b329-6913-4df8-bb35-f59afd9b8484"
      unitRef="usd">689000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMTktMy0xLTEtMTY2MzQ_6b0359a1-a142-40bb-af27-40e43837df4d"
      unitRef="usd">-8106000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInDeferredCompensation
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjAtMS0xLTEtMTY2MzQ_c5e01d9c-b75b-4834-a3ef-0c47bcb46b60"
      unitRef="usd">242000</us-gaap:IncreaseDecreaseInDeferredCompensation>
    <us-gaap:IncreaseDecreaseInDeferredCompensation
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjAtMy0xLTEtMTY2MzQ_8460d648-87e2-456d-b45c-dcb35e270d3a"
      unitRef="usd">170000</us-gaap:IncreaseDecreaseInDeferredCompensation>
    <us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjEtMS0xLTEtMTY2MzQ_a7603784-ee3b-4c53-a92e-b36d654fca6c"
      unitRef="usd">-303000</us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations>
    <us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjEtMy0xLTEtMTY2MzQ_7cfbca3b-2873-4578-9d25-ed7c2deebcb7"
      unitRef="usd">172000</us-gaap:IncreaseDecreaseInPensionAndPostretirementObligations>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjItMS0xLTEtMTY2MzQ_e0ac28fc-becf-445f-8ea2-7b4c144cf50a"
      unitRef="usd">-490000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjItMy0xLTEtMTY2MzQ_c5ec558e-e904-44c3-86ed-4b80f10db9a5"
      unitRef="usd">1135000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjMtMS0xLTEtMTY2MzQ_abe0dcfe-35c7-401d-acda-9506eaeefe8a"
      unitRef="usd">-1191000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjMtMy0xLTEtMTY2MzQ_47fbb9ff-85b0-4745-869f-7c2f089bb252"
      unitRef="usd">-7384000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjQtMS0xLTEtMTY2MzQ_b3173938-4c84-48c8-b294-77b9e65552a6"
      unitRef="usd">-596000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjQtMy0xLTEtMTY2MzQ_c2851c4b-a201-41b3-a7b8-972158bce6ea"
      unitRef="usd">-3435000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjctMS0xLTEtMTY2MzQ_1f479e7d-b692-42bb-9bc3-635e9ff6e17c"
      unitRef="usd">6736000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjctMy0xLTEtMTY2MzQ_9926b8a8-6d34-4259-b1e7-3b2e71c3bf69"
      unitRef="usd">3568000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjgtMS0xLTEtMTY2MzQ_bef7d68a-2ea2-4d87-bbd9-967b8e4d2890"
      unitRef="usd">0</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMjgtMy0xLTEtMTY2MzQ_36dcef04-1e3e-4687-8ba7-a7ded84965fc"
      unitRef="usd">3000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzEtMS0xLTEtMTY2MzQ_3f769244-abc2-4959-9f93-adee21bedbc7"
      unitRef="usd">-6736000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzEtMy0xLTEtMTY2MzQ_7c106dfc-42e1-436e-9267-6f1467fcbf06"
      unitRef="usd">-3565000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzUtMS0xLTEtMTY2MzQ_e0a49715-e52e-4045-8594-193ad02fe429"
      unitRef="usd">1865000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzUtMy0xLTEtMTY2MzQ_5332582c-9089-4011-a4bb-cdce79728f88"
      unitRef="usd">1803000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzYtMS0xLTEtMTY2MzQ_9e124945-f4c0-4c13-bac3-12aca6cdb91b"
      unitRef="usd">2291000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzYtMy0xLTEtMTY2MzQ_46c007ba-c3a0-4b14-a145-628e26b23e7d"
      unitRef="usd">978000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzktMS0xLTEtMTY2MzQ_bd4402ac-5b21-4a1b-955e-28e25fffeafd"
      unitRef="usd">-4156000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfMzktMy0xLTEtMTY2MzQ_34793816-73ed-49e8-9b18-4b66e03a5b06"
      unitRef="usd">-2781000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDAtMS0xLTEtMTY2MzQ_7734ad54-daaa-4251-b14d-7069d47d530e"
      unitRef="usd">-48000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDAtMy0xLTEtMTY2MzQ_386a8587-0633-4117-98e3-cefe5eeddedd"
      unitRef="usd">182000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDEtMS0xLTEtMTY2MzQ_35583446-60ae-4d1d-b06f-b4129970a60b"
      unitRef="usd">-11536000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDEtMy0xLTEtMTY2MzQ_0c99810c-9c53-40c2-b3d8-ce0a6f0c8108"
      unitRef="usd">-9599000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDItMS0xLTEtMTY2MzQ_253f4921-8a9e-4c82-9fa7-13be59c71ce2"
      unitRef="usd">24591000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i75127e4c02274447be8da394da52e7a6_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDItMy0xLTEtMTY2MzQ_1bfc6bf3-9daf-4b02-a4b5-7e9364091909"
      unitRef="usd">40890000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDMtMS0xLTEtMTY2MzQ_a8576563-c560-4582-a420-70f1e23bc86f"
      unitRef="usd">13055000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i370b1859a1294ff39e5b9a27df1ceff4_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOmM4YmU3ZjdmNTk3ZTQyMjM5ZmQyN2ZiODVmZDU1Yjc4L3RhYmxlcmFuZ2U6YzhiZTdmN2Y1OTdlNDIyMzlmZDI3ZmI4NWZkNTViNzhfNDMtMy0xLTEtMTY2MzQ_7dabcbd8-1ff8-4dc6-9be1-5e0082fb600f"
      unitRef="usd">31291000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOjZjOTc3OGJhMzEzMjQyMGM5ZmJiMzcwZDE3NDNjYmQ4L3RhYmxlcmFuZ2U6NmM5Nzc4YmEzMTMyNDIwYzlmYmIzNzBkMTc0M2NiZDhfNC0xLTEtMS0xNjYzNA_6ba612ef-3049-4bd3-8085-394fabc65545"
      unitRef="usd">1227000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOjZjOTc3OGJhMzEzMjQyMGM5ZmJiMzcwZDE3NDNjYmQ4L3RhYmxlcmFuZ2U6NmM5Nzc4YmEzMTMyNDIwYzlmYmIzNzBkMTc0M2NiZDhfNC0zLTEtMS0xNjYzNA_754680c3-c9cb-4e4f-a365-1acb1fada454"
      unitRef="usd">858000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:DividendsPayableCurrentAndNoncurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOjZjOTc3OGJhMzEzMjQyMGM5ZmJiMzcwZDE3NDNjYmQ4L3RhYmxlcmFuZ2U6NmM5Nzc4YmEzMTMyNDIwYzlmYmIzNzBkMTc0M2NiZDhfNS0xLTEtMS0xNjYzNA_5279cf11-84d5-4e33-84fd-098b542b7086"
      unitRef="usd">1864000</us-gaap:DividendsPayableCurrentAndNoncurrent>
    <us-gaap:DividendsPayableCurrentAndNoncurrent
      contextRef="i370b1859a1294ff39e5b9a27df1ceff4_I20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl8zNy9mcmFnOjdmMzE3NjExY2NkNDRiNTc5NzQwMzZkNmY3OWNhNGEzL3RhYmxlOjZjOTc3OGJhMzEzMjQyMGM5ZmJiMzcwZDE3NDNjYmQ4L3RhYmxlcmFuZ2U6NmM5Nzc4YmEzMTMyNDIwYzlmYmIzNzBkMTc0M2NiZDhfNS0zLTEtMS0xNjYzNA_40df475e-693a-4095-8ff3-dca5edd5aebf"
      unitRef="usd">1807000</us-gaap:DividendsPayableCurrentAndNoncurrent>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMzk_7486956b-4f05-468a-9ba4-1eaece79870b">BASIS OF PRESENTATION AND SIGNIFICANT ACCOUNTING POLICIES&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of Presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;) for interim financial information and in compliance with instructions to Form 10-Q and Article 10 of Regulation S-X.&#160;Accordingly, they do not include all of the information and footnotes required by U.S. GAAP for complete financial statements. The financial statements and the related notes are condensed and should be read in conjunction with the Consolidated Financial Statements and related notes for the fiscal year ended July&#160;31, 2021 included in our Annual Report on Form 10-K filed with the SEC.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The unaudited Condensed Consolidated Financial Statements include the accounts of Oil-Dri Corporation of America and its subsidiaries.&#160;All significant intercompany transactions are eliminated. Except as otherwise indicated herein or as the context otherwise requires, references to &#x201c;Oil-Dri,&#x201d; the &#x201c;Company,&#x201d; &#x201c;we,&#x201d; &#x201c;us&#x201d; or &#x201c;our&#x201d; refer to Oil-Dri Corporation of America and its subsidiaries.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The unaudited Condensed Consolidated Financial Statements reflect all adjustments, consisting of normal recurring accruals and reclassifications which are, in the opinion of management, necessary for a fair presentation of the statements contained herein.&#160;Operating results for the three months ended October&#160;31, 2021 are not necessarily an indication of the results that may be expected for the fiscal year ending July&#160;31, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Reclassification&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain amounts in the prior period financial statements have been reclassified to conform to the presentation of the current period financial statements. These immaterial reclassifications had no effect on the previously reported net income.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:107%"&gt;Immaterial Correction of an Error in Previously Issued Financial Statements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%"&gt;Subsequent to the issuance of our Annual Report on Form 10-K for the fiscal year ended July 31, 2020, we identified an error in our historical financial statements related to the classification of certain costs as selling, general and administrative expenses relating to the production of our inventory that should be classified as cost of sales. These costs generally relate to our annual discretionary bonus and 401(k) employer match for our manufacturing employees, employee salaries for individuals in our support functions that spend a portion of their time related to our manufacturing operations such as IT, and other costs mostly related to consultants and outside services.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In accordance with FASB Accounting Standards Codification 250, &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:112%"&gt;Accounting Changes and Error Corrections&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;, we evaluated the materiality of the error from both a quantitative and qualitative perspective, and concluded that the error was immaterial to our prior period interim and annual financial statements. Since the error was not material to any prior period interim or annual financial statements, no amendments to previously filed interim or annual periodic reports are required. Consequently, we have adjusted for these errors by revising our historical condensed consolidated financial statements presented herein. The revision to our historical condensed consolidated financial statements did not result in any impact to our consolidated net income.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The effects of the corrections to each of the individual affected line items in our unaudited Condensed Consolidated Statements of Income were as follows (in thousands):  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.081%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.785%"/&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="15" 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;For the Three Months Ended October 31, 2020&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 #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As Previously Reported&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Corrections&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As Corrected&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Cost of Sales&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt 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="border-top:0.5pt 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;(55,793)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:0.5pt 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="border-top:0.5pt 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;(1,524)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:0.5pt 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="border-top:0.5pt 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;(57,317)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:6pt"&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: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;Selling, General and Administrative Expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,127)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,524&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,603)&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 style="height:5pt"&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;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The related impacts to Inventory in our unaudited Condensed Consolidated Balance Sheet were not considered material and hence, were not adjusted. The effects of the corrections to our Notes to the unaudited Condensed Consolidated Financial Statements for Operating Segments were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.192%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:36.021%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.680%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.839%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.504%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.841%"/&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="15" 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;For the Three Months Ended October 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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;Income&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As Previously Reported&lt;/span&gt;&lt;/div&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;Corrections&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;As Corrected&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&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;Business to Business Products&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,196&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(596)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,600&#160;&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 style="height:5pt"&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: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;Retail and Wholesale Products&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,478&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(928)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,550&#160;&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 style="height:5pt"&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: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;Corporate Expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,497)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,524&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,973)&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 style="height:3pt"&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;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Management Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of the unaudited Condensed Consolidated Financial Statements in conformity with U.S. GAAP requires the use of estimates and assumptions that affect the reported amounts of assets, liabilities, revenues and expenses during the reporting period, as well as the related disclosures.&#160;Estimates and assumptions about future events cannot be made with certainty, including the potential impacts and duration of the novel coronavirus pandemic (&#x201c;the coronavirus&#x201d;  or &#x201c;COVID-19&#x201d;) and its aftermath. All of our estimates and assumptions are revised periodically.&#160;Actual results could differ from these estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Summary of Significant Accounting Policies&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our significant accounting policies, which are detailed in our Annual Report on Form 10-K for the fiscal year ended July&#160;31, 2021, have not materially changed. The following is a description of certain of our significant accounting policies.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Trade Receivables.&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 recognize trade receivables when control of finished products are transferred to our customers. We record an allowance for doubtful accounts based on our historical experience and a periodic review of our accounts receivable, including a review of the overall aging of accounts, consideration of customer credit risk and analysis of facts and circumstances about specific customer accounts.&#160;A customer account is determined to be uncollectible when it is probable that a loss will be incurred after we have completed our internal collection procedures, including termination of shipments, direct customer contact and formal demand of payment.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Overburden Removal and Mining Costs.&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 mine sorbent materials on property that we either own or lease as part of our overall operations.&#160;A significant part of our overall mining cost is incurred during the process of removing the overburden (non-usable material) from the mine site, thus exposing the sorbent material used in a majority of our production processes.&#160;These stripping costs are treated as a variable inventory production cost and are included in cost of sales in the period they are incurred.&#160;We defer and amortize the pre-production overburden removal costs associated with opening a new mine.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Additionally, it is our policy to capitalize the purchase cost of land and mineral rights, including associated legal fees, survey fees and real estate fees.&#160;The costs of obtaining mineral patents, including legal fees and drilling expenses, are also capitalized.&#160;Pre-production development costs on new mines and any prepaid royalties that may be offset against future royalties due upon extraction of the minerals are also capitalized.&#160;All exploration related costs are expensed as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We perform ongoing reclamation activities during the normal course of our overburden removal.&#160;As overburden is removed from a mine site, it is hauled to previously mined sites and is used to refill older sites.&#160;This process allows us to continuously reclaim older mine sites and dispose of overburden simultaneously, therefore minimizing the costs associated with the reclamation process.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Leases. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ASC 842, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Leases&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, provides that a contract is, or contains, a lease if it conveys the right to control the use of an identified asset and, accordingly, a lease liability and a related right-of-use (&#x201c;ROU&#x201d;) asset is recognized at the commencement date on our consolidated balance sheet. As provided in ASC 842, we have elected not to apply these measurement and recognition requirements to short-term leases (i.e., leases with a term of 12 months or less). Short-term leases will not be recorded as ROU assets or lease liabilities on our consolidated balance sheet, and the related lease payments will be recognized in net earnings on a straight-line basis over the lease term. For leases other than short-term leases, the lease liability is equal to the present value of unpaid lease payments over the remaining lease term. The lease term may reflect options to extend or terminate the lease when it is reasonably certain that such options will be exercised. To determine the present value of the lease liability, we used an incremental borrowing rate, which is defined as the rate of interest we would have to pay to borrow (on a collateralized basis over a similar term) an amount equal to the lease payments in similar economic environments. The ROU asset is based on the corresponding lease liability adjusted for certain costs such as initial direct costs, prepaid lease payments &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;and lease incentives received. Both operating and finance lease ROU assets are reviewed for impairment, consistent with other long-lived assets, whenever events or changes in circumstances indicate that the carrying amount may not be recoverable. After a ROU asset is impaired, any remaining balance of the ROU asset is amortized on a straight-line basis over the shorter of the remaining lease term or the estimated useful life. After the lease commencement date, we evaluate lease modifications, if any, that could result in a change in the accounting for leases. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain of our leases provide for variable lease payments that vary due to changes in facts and circumstances occurring after the commencement date, other than the passage of time. Variable lease payments that are dependent on an index or rate (e.g., Consumer Price Index) are included in the initial measurement of the lease liability and the ROU asset. Variable lease payments that are not known at the commencement date and are determinable based on the performance or use of the underlying asset, are expensed as incurred. Our variable lease payments primarily include common area maintenance charges based on the percentage of the total square footage leased and the usage of assets, such as photocopiers.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Some of our contracts may contain lease components as well as non-lease components, such as an agreement to purchase services. As allowed under ASC 842, we have elected not to separate the lease components from non-lease components for all asset classes and we will not allocate the contract consideration to these components. This policy was applied to all existing leases upon adoption of ASC 842 and will be applied to new leases on an ongoing basis. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Revenue Recognition.&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 recognize revenue when performance obligations under the terms of the contracts with customers are satisfied. Our performance obligation generally consists of the promise to sell finished products to wholesalers, distributors and retailers or consumers and our obligations have an original duration of one year or less. Control of the finished products are transferred upon shipment to, or receipt at, customers' locations, as determined by the specific terms of the contract. We have completed our performance obligation when control is transferred and we recognize revenue accordingly. Taxes collected from customers and remitted to governmental authorities are excluded from net sales. Sales returns are not material nor are warranties and any related obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have an unconditional right to consideration under the payment terms specified in the contract upon completion of the performance obligation. We may require certain customers to provide payment in advance of product shipment. We recorded a liability for these advance payments of $539,000 and $256,000 as of October&#160;31, 2021 and July&#160;31, 2021, respectively. This liability is reported in Other within Accrued Expenses on the unaudited Condensed Consolidated Balance Sheet. Revenue recognized during the three months ended October&#160;31, 2021 that was included in the liability for advance payments at the beginning of the period was $157,000. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We routinely commit to one-time or ongoing trade promotion programs directly with consumers, such as coupon programs, and with customers, such as volume discounts, cooperative marketing and other arrangements. We estimate and accrue the expected costs of these programs. These costs are considered variable consideration under ASC 606, &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;Revenue from Contracts with Customers&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 are netted against sales when revenue is recorded. The accruals are based on our best estimate of the amounts necessary to settle future and existing obligations on products sold as of the balance sheet date. To estimate these accruals, we rely on our historical experience of trade spending patterns and that of the industry, current trends and forecasted data.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Selling, General and Administrative Expenses.&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; Selling, general and administrative expenses (&#x201c;SG&amp;amp;A&#x201d;) include salaries, wages and benefits associated with staff outside the manufacturing and distribution functions, all marketing related costs, any miscellaneous trade spending expenses not required to be included in net sales, research and development costs, depreciation and amortization related to assets outside the manufacturing and distribution process and all other non-manufacturing and non-distribution expenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Other Current and Noncurrent Liabilities. &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;On March 27, 2020, in response to the COVID-19 pandemic, the Coronavirus Aid, Relief, and Economic Security Act (the &#x201c;CARES Act&#x201d;) was signed into U.S. law. The CARES Act provides for, among other things, deferral of the employer portion of social security taxes incurred through the end of calendar 2020. As permitted by the CARES Act, we deferred approximately $2,300,000 in payroll taxes in calendar year 2020. The $2,300,000 will be paid equally in the fourth quarters of calendar years 2021 and 2022; $1,150,000 in 2021 and $1,150,000 in 2022. The current portion of the accrual for these payroll taxes is included in Other within Accrued Expenses and the noncurrent portion of the accrual is included in Other within Noncurrent Liabilities on the unaudited Condensed Consolidated Balance Sheet.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTA5OTUxMTY0MTY4MA_1112e99f-ba73-4b0f-8ca0-658c023971e1">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The effects of the corrections to each of the individual affected line items in our unaudited Condensed Consolidated Statements of Income were as follows (in thousands):  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.081%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.785%"/&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="15" 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;For the Three Months Ended October 31, 2020&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 #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As Previously Reported&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Corrections&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As Corrected&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Cost of Sales&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt 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="border-top:0.5pt 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;(55,793)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:0.5pt 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="border-top:0.5pt 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;(1,524)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:0.5pt 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="border-top:0.5pt 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;(57,317)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:0.5pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:6pt"&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: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;Selling, General and Administrative Expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,127)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,524&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,603)&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 style="height:5pt"&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;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The related impacts to Inventory in our unaudited Condensed Consolidated Balance Sheet were not considered material and hence, were not adjusted. The effects of the corrections to our Notes to the unaudited Condensed Consolidated Financial Statements for Operating Segments were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:77.192%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:36.021%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.680%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.839%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.504%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.841%"/&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="15" 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;For the Three Months Ended October 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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;Income&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As Previously Reported&lt;/span&gt;&lt;/div&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;Corrections&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;As Corrected&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:0.5pt solid #000;padding:0 1pt"/&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;Business to Business Products&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,196&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(596)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,600&#160;&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 style="height:5pt"&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: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;Retail and Wholesale Products&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,478&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(928)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,550&#160;&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 style="height:5pt"&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: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;Corporate Expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,497)&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,524&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align: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,973)&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 style="height:3pt"&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;/table&gt;</us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i6e15836dc88c4877813172fb6579c633_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOmJhM2QxYmQ4MmY5YzQyMmY4MmE2MTQ3ZGE2ZmU5MmQ5L3RhYmxlcmFuZ2U6YmEzZDFiZDgyZjljNDIyZjgyYTYxNDdkYTZmZTkyZDlfMi0xLTEtMS0xODE0NQ_2c0a656b-1360-4a3d-92e4-e7e372e55922"
      unitRef="usd">55793000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i09cade1242dd46dca7149697ceb77108_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOmJhM2QxYmQ4MmY5YzQyMmY4MmE2MTQ3ZGE2ZmU5MmQ5L3RhYmxlcmFuZ2U6YmEzZDFiZDgyZjljNDIyZjgyYTYxNDdkYTZmZTkyZDlfMi0zLTEtMS0xODE0NQ_95c6b314-63e0-4852-9ed0-53eae76d649d"
      unitRef="usd">1524000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOmJhM2QxYmQ4MmY5YzQyMmY4MmE2MTQ3ZGE2ZmU5MmQ5L3RhYmxlcmFuZ2U6YmEzZDFiZDgyZjljNDIyZjgyYTYxNDdkYTZmZTkyZDlfMi01LTEtMS0xODE0NQ_3d02c6e7-ed77-4346-bab6-217aa3180566"
      unitRef="usd">57317000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i6e15836dc88c4877813172fb6579c633_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOmJhM2QxYmQ4MmY5YzQyMmY4MmE2MTQ3ZGE2ZmU5MmQ5L3RhYmxlcmFuZ2U6YmEzZDFiZDgyZjljNDIyZjgyYTYxNDdkYTZmZTkyZDlfNC0xLTEtMS0xODE0NQ_a923d5f3-79a8-4bb6-bacf-81066e6fc5eb"
      unitRef="usd">15127000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i09cade1242dd46dca7149697ceb77108_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOmJhM2QxYmQ4MmY5YzQyMmY4MmE2MTQ3ZGE2ZmU5MmQ5L3RhYmxlcmFuZ2U6YmEzZDFiZDgyZjljNDIyZjgyYTYxNDdkYTZmZTkyZDlfNC0zLTEtMS0xODE0NQ_4702da3a-d998-4faa-8b85-3de5d448ccf3"
      unitRef="usd">-1524000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOmJhM2QxYmQ4MmY5YzQyMmY4MmE2MTQ3ZGE2ZmU5MmQ5L3RhYmxlcmFuZ2U6YmEzZDFiZDgyZjljNDIyZjgyYTYxNDdkYTZmZTkyZDlfNC01LTEtMS0xODE0NQ_491a7660-e784-4395-8f35-e878447fdca8"
      unitRef="usd">13603000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="if1612c640a224afd9049922af82ac769_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfNi0xLTEtMS0xODE0NQ_68b46d1d-f628-4b77-b9f5-82ae12c11c03"
      unitRef="usd">8196000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="ibd90541b89d04feeaf068a30fd79de03_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfNi0zLTEtMS0xODE0NQ_f0b9d6c6-ca40-41d6-82e2-aa3bf02efa17"
      unitRef="usd">-596000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="i9eee953ede8b4d09b6ec4480902ec027_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfNi01LTEtMS0xODE0NQ_24768881-6fc8-4e4a-a0b8-5dec41375347"
      unitRef="usd">7600000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="i64c7821e52d5469fb874fbc045a19728_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfOC0xLTEtMS0xODE0NQ_0d1927c0-5e32-487b-ad26-19edb47b56bf"
      unitRef="usd">4478000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="i1ecfb6d5d44a4990a4fd3e7c9286733a_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfOC0zLTEtMS0xODE0NQ_f4d63e03-27e1-4c85-b8b2-d17b861cf6ab"
      unitRef="usd">-928000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="idf9e6e7486644eab821573d02fdc16ba_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfOC01LTEtMS0xODE0NQ_9e9cecbb-2bfd-4084-97d0-042b875f187e"
      unitRef="usd">3550000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:CorporateExpenses
      contextRef="i6e15836dc88c4877813172fb6579c633_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfMTAtMS0xLTEtMTgxNDU_865e0631-efa7-42c3-ba3e-b132e38ed4f6"
      unitRef="usd">7497000</odc:CorporateExpenses>
    <odc:CorporateExpenses
      contextRef="i09cade1242dd46dca7149697ceb77108_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfMTAtMy0xLTEtMTgxNDU_b4886d02-e764-4abe-bb7b-ed10c4ac88ff"
      unitRef="usd">-1524000</odc:CorporateExpenses>
    <odc:CorporateExpenses
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RhYmxlOjQ0MDQ5MGFkODJmZjQxOGQ5NWY3NWQwNDY3MzVkMjBhL3RhYmxlcmFuZ2U6NDQwNDkwYWQ4MmZmNDE4ZDk1Zjc1ZDA0NjczNWQyMGFfMTAtNS0xLTEtMTgxNDU_e0ae1f3b-9eaa-4de2-8705-2ea1463157f8"
      unitRef="usd">5973000</odc:CorporateExpenses>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMTQ_e872433b-6819-42b0-a4c3-a70eecc0c75f">We recognize trade receivables when control of finished products are transferred to our customers. We record an allowance for doubtful accounts based on our historical experience and a periodic review of our accounts receivable, including a review of the overall aging of accounts, consideration of customer credit risk and analysis of facts and circumstances about specific customer accounts.&#160;A customer account is determined to be uncollectible when it is probable that a loss will be incurred after we have completed our internal collection procedures, including termination of shipments, direct customer contact and formal demand of payment.</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <odc:OverburdenRemovalAndMiningCostsPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMjY_bfca97d9-33a4-418f-a930-69842fb2c5a3">We mine sorbent materials on property that we either own or lease as part of our overall operations.&#160;A significant part of our overall mining cost is incurred during the process of removing the overburden (non-usable material) from the mine site, thus exposing the sorbent material used in a majority of our production processes.&#160;These stripping costs are treated as a variable inventory production cost and are included in cost of sales in the period they are incurred.&#160;We defer and amortize the pre-production overburden removal costs associated with opening a new mine.Additionally, it is our policy to capitalize the purchase cost of land and mineral rights, including associated legal fees, survey fees and real estate fees.&#160;The costs of obtaining mineral patents, including legal fees and drilling expenses, are also capitalized.&#160;Pre-production development costs on new mines and any prepaid royalties that may be offset against future royalties due upon extraction of the minerals are also capitalized.&#160;All exploration related costs are expensed as incurred.</odc:OverburdenRemovalAndMiningCostsPolicyTextBlock>
    <us-gaap:AssetRetirementObligationsPolicy
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMTM_299a7a70-4f1a-4477-a89f-852bdcdfc010">We perform ongoing reclamation activities during the normal course of our overburden removal.&#160;As overburden is removed from a mine site, it is hauled to previously mined sites and is used to refill older sites.&#160;This process allows us to continuously reclaim older mine sites and dispose of overburden simultaneously, therefore minimizing the costs associated with the reclamation process.</us-gaap:AssetRetirementObligationsPolicy>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMjE_f4fae219-4747-4deb-af92-a3a929f00474">&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ASC 842, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Leases&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, provides that a contract is, or contains, a lease if it conveys the right to control the use of an identified asset and, accordingly, a lease liability and a related right-of-use (&#x201c;ROU&#x201d;) asset is recognized at the commencement date on our consolidated balance sheet. As provided in ASC 842, we have elected not to apply these measurement and recognition requirements to short-term leases (i.e., leases with a term of 12 months or less). Short-term leases will not be recorded as ROU assets or lease liabilities on our consolidated balance sheet, and the related lease payments will be recognized in net earnings on a straight-line basis over the lease term. For leases other than short-term leases, the lease liability is equal to the present value of unpaid lease payments over the remaining lease term. The lease term may reflect options to extend or terminate the lease when it is reasonably certain that such options will be exercised. To determine the present value of the lease liability, we used an incremental borrowing rate, which is defined as the rate of interest we would have to pay to borrow (on a collateralized basis over a similar term) an amount equal to the lease payments in similar economic environments. The ROU asset is based on the corresponding lease liability adjusted for certain costs such as initial direct costs, prepaid lease payments &lt;/span&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;and lease incentives received. Both operating and finance lease ROU assets are reviewed for impairment, consistent with other long-lived assets, whenever events or changes in circumstances indicate that the carrying amount may not be recoverable. After a ROU asset is impaired, any remaining balance of the ROU asset is amortized on a straight-line basis over the shorter of the remaining lease term or the estimated useful life. After the lease commencement date, we evaluate lease modifications, if any, that could result in a change in the accounting for leases. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain of our leases provide for variable lease payments that vary due to changes in facts and circumstances occurring after the commencement date, other than the passage of time. Variable lease payments that are dependent on an index or rate (e.g., Consumer Price Index) are included in the initial measurement of the lease liability and the ROU asset. Variable lease payments that are not known at the commencement date and are determinable based on the performance or use of the underlying asset, are expensed as incurred. Our variable lease payments primarily include common area maintenance charges based on the percentage of the total square footage leased and the usage of assets, such as photocopiers.&lt;/span&gt;&lt;/div&gt;Some of our contracts may contain lease components as well as non-lease components, such as an agreement to purchase services. As allowed under ASC 842, we have elected not to separate the lease components from non-lease components for all asset classes and we will not allocate the contract consideration to these components. This policy was applied to all existing leases upon adoption of ASC 842 and will be applied to new leases on an ongoing basis.</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMzU_8d347e3d-e5ab-4e1d-8387-136ce4c131f4">We recognize revenue when performance obligations under the terms of the contracts with customers are satisfied. Our performance obligation generally consists of the promise to sell finished products to wholesalers, distributors and retailers or consumers and our obligations have an original duration of one year or less. Control of the finished products are transferred upon shipment to, or receipt at, customers' locations, as determined by the specific terms of the contract. We have completed our performance obligation when control is transferred and we recognize revenue accordingly. Taxes collected from customers and remitted to governmental authorities are excluded from net sales. Sales returns are not material nor are warranties and any related obligations.&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have an unconditional right to consideration under the payment terms specified in the contract upon completion of the performance obligation. We may require certain customers to provide payment in advance of product shipment. We recorded a liability for these advance payments of $539,000 and $256,000 as of October&#160;31, 2021 and July&#160;31, 2021, respectively. This liability is reported in Other within Accrued Expenses on the unaudited Condensed Consolidated Balance Sheet. Revenue recognized during the three months ended October&#160;31, 2021 that was included in the liability for advance payments at the beginning of the period was $157,000. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We routinely commit to one-time or ongoing trade promotion programs directly with consumers, such as coupon programs, and with customers, such as volume discounts, cooperative marketing and other arrangements. We estimate and accrue the expected costs of these programs. These costs are considered variable consideration under ASC 606, &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;Revenue from Contracts with Customers&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 are netted against sales when revenue is recorded. The accruals are based on our best estimate of the amounts necessary to settle future and existing obligations on products sold as of the balance sheet date. To estimate these accruals, we rely on our historical experience of trade spending patterns and that of the industry, current trends and forecasted data.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:DeferredRevenueCurrent
      contextRef="i9631c6fbc6c146ec8150d9a55365d6d2_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfODg1NQ_2c473bc5-f7f6-4df7-a26e-6a1173a45100"
      unitRef="usd">539000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="i92061bce06bf4ab791348b13703b8b7b_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfODg2Mg_5b7f0531-6ae1-45cc-9117-8d90527efa92"
      unitRef="usd">256000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueRevenueRecognized1
      contextRef="i1f3ba1f5a145435a81251fbeeb53f6c6_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfOTE1MQ_91ab5512-798a-4680-963f-ced8b1eaf3e2"
      unitRef="usd">157000</us-gaap:DeferredRevenueRevenueRecognized1>
    <us-gaap:SellingGeneralAndAdministrativeExpensesPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMTc_41705c0b-446b-40e1-8d15-4a7a16c48ccd">Selling, general and administrative expenses (&#x201c;SG&amp;amp;A&#x201d;) include salaries, wages and benefits associated with staff outside the manufacturing and distribution functions, all marketing related costs, any miscellaneous trade spending expenses not required to be included in net sales, research and development costs, depreciation and amortization related to assets outside the manufacturing and distribution process and all other non-manufacturing and non-distribution expenses.</us-gaap:SellingGeneralAndAdministrativeExpensesPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTEyMzc_e7b08caa-9881-4a32-9644-eec7ba29ade0">On March 27, 2020, in response to the COVID-19 pandemic, the Coronavirus Aid, Relief, and Economic Security Act (the &#x201c;CARES Act&#x201d;) was signed into U.S. law. The CARES Act provides for, among other things, deferral of the employer portion of social security taxes incurred through the end of calendar 2020. As permitted by the CARES Act, we deferred approximately $2,300,000 in payroll taxes in calendar year 2020. The $2,300,000 will be paid equally in the fourth quarters of calendar years 2021 and 2022; $1,150,000 in 2021 and $1,150,000 in 2022. The current portion of the accrual for these payroll taxes is included in Other within Accrued Expenses and the noncurrent portion of the accrual is included in Other within Noncurrent Liabilities on the unaudited Condensed Consolidated Balance Sheet.</us-gaap:IncomeTaxPolicyTextBlock>
    <odc:CARESActCurrentPayrollTaxDeferral
      contextRef="i0ddf76d2304f4b23b2730dd8c3dc8823_D20200327-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTA4MjQ_6726b18d-3d48-4060-8fd0-151d4d9b4bc8"
      unitRef="usd">2300000</odc:CARESActCurrentPayrollTaxDeferral>
    <odc:CARESActCurrentPayrollTaxDeferral
      contextRef="i0ddf76d2304f4b23b2730dd8c3dc8823_D20200327-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTA4NzE_6726b18d-3d48-4060-8fd0-151d4d9b4bc8"
      unitRef="usd">2300000</odc:CARESActCurrentPayrollTaxDeferral>
    <odc:CARESAct2021DeferredPayrollTaxPayment
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTA5OTUxMTY0MTY2NA_c72646fe-34d4-460a-a73f-53d47f1b8866"
      unitRef="usd">1150000</odc:CARESAct2021DeferredPayrollTaxPayment>
    <odc:CARESAct2022DeferredPayrollTaxPayment
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80My9mcmFnOmIyNjkwNzY1MzJlYjQyOTM5YzdhNTUxZGJlNWNjN2Q0L3RleHRyZWdpb246YjI2OTA3NjUzMmViNDI5MzljN2E1NTFkYmU1Y2M3ZDRfMTA5OTUxMTY0MTY3Ng_b6220e3c-c7d1-4181-9941-4669f9a05280"
      unitRef="usd">1150000</odc:CARESAct2022DeferredPayrollTaxPayment>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80Ni9mcmFnOmYwZTM0N2JlNjYzMjQ2YjliYjdkM2U0NzI2Mjg1MzA1L3RleHRyZWdpb246ZjBlMzQ3YmU2NjMyNDZiOWJiN2QzZTQ3MjYyODUzMDVfMjY2MA_dd7f8ce5-9a20-472e-8f65-24e1eaba0ff4">NEW ACCOUNTING PRONOUNCEMENTS AND REGULATIONS&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11.25pt;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;In December 2019, the FASB issued guidance under ASC 740, &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;Income Taxes&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;, which simplifies the accounting for income taxes. The guidance removes several specific exceptions to the general principles in ASC 740 and clarifies and makes amendments to improve consistent application of and simplify existing accounting for other areas in ASC 740. The adoption of this guidance on August 1, 2021 was not material to our unaudited Condensed Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11.25pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Recently Issued Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2020, the FASB issued guidance under ASC 848, &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;Reference Rate Reform.&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; This guidance provides optional expedients and exceptions to account for debt, leases, contracts, hedging relationships and other transactions that reference LIBOR or another reference rate if certain criteria are met. The guidance is effective immediately and may be applied prospectively to contract modifications made and hedging relationships entered into or evaluated on or before December 31, 2022. We have debt agreements that reference LIBOR and to the extent that those agreements are modified to replace LIBOR with another interest rate index, ASC 848 will allow us to account for the modification as a continuation of the existing contract without additional analysis. We are currently evaluating the potential effects of the adoption of this guidance on our Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11.25pt;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;In June 2016, the FASB issued guidance under ASC 326, &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;Financial Instruments-Credit Losses&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;, which requires companies to utilize an impairment model for most financial assets measured at amortized cost and certain other financial instruments, which include trade and other receivables, loans and held-to-maturity debt securities, to record an allowance for credit risk based on expected losses rather than incurred losses. In addition, this new guidance changes the recognition method for credit losses on available-for-sale debt securities, which can occur as a result of market and credit risk, as well as additional disclosures.&#160;In general, this guidance will require modified retrospective adoption for all outstanding instruments that fall under this guidance. This guidance is effective for our first quarter of fiscal year 2023. We are currently evaluating the impact of the adoption of this requirement on our Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There have been no other accounting pronouncements issued but not yet adopted by us which are expected to have a material impact on our Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RleHRyZWdpb246NmY3YWE1NTdhZjA2NGYxMDg3MmVlMDk4Mzk5ZmQ1N2FfMTE5Mg_e316c9f1-0697-4a9b-a095-7647d1b73d7c">INVENTORIES&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The composition of inventories 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:66.666%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.650%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.226%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;October 31,&lt;br/&gt;2021&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;July 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;Finished goods&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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;16,700&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;14,179&#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;Packaging&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:700;line-height:100%"&gt;6,216&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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,084&#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;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:700;line-height:100%"&gt;5,776&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;4,335&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Inventories&lt;/span&gt;&lt;/td&gt;&lt;td 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:700;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:700;line-height:100%"&gt;28,692&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;23,598&#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;Inventories are valued at the lower of cost (first-in, first-out) or net realizable value.&#160;Inventory costs include the cost of raw materials, packaging supplies, labor and other overhead costs.&#160;The inventory obsolescence reserve values at October&#160;31, 2021 and July&#160;31, 2021 were $621,000 and $641,000, respectively. Inventories, in all categories, have increased due to a combination of rising costs and building inventory levels for anticipated demand.</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RleHRyZWdpb246NmY3YWE1NTdhZjA2NGYxMDg3MmVlMDk4Mzk5ZmQ1N2FfMTE5MA_25c8fadd-eef3-4ba0-a8b9-38ef60aba6a6">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The composition of inventories 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:66.666%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.650%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.226%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;October 31,&lt;br/&gt;2021&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;July 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;Finished goods&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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;16,700&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;14,179&#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;Packaging&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:700;line-height:100%"&gt;6,216&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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,084&#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;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:700;line-height:100%"&gt;5,776&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;4,335&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Inventories&lt;/span&gt;&lt;/td&gt;&lt;td 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:700;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:700;line-height:100%"&gt;28,692&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;23,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoods
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfMS0xLTEtMS0xNjYzNA_2b24bbe1-a739-4e7d-af9d-ddca4447864d"
      unitRef="usd">16700000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfMS0zLTEtMS0xNjYzNA_85b71653-d1ea-4e02-b0f6-8d78bf224475"
      unitRef="usd">14179000</us-gaap:InventoryFinishedGoods>
    <odc:PackagingInventory
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfMi0xLTEtMS0xNjYzNA_9f1446ae-5fc1-4fcb-8e67-bde953d87bac"
      unitRef="usd">6216000</odc:PackagingInventory>
    <odc:PackagingInventory
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfMi0zLTEtMS0xNjYzNA_125b8f2b-2394-4f3a-a1b8-a1899bfb8077"
      unitRef="usd">5084000</odc:PackagingInventory>
    <us-gaap:OtherInventory
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfMy0xLTEtMS0xNjYzNA_8215d6d9-f1d7-44ed-aba3-45fd68f7c1cb"
      unitRef="usd">5776000</us-gaap:OtherInventory>
    <us-gaap:OtherInventory
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfMy0zLTEtMS0xNjYzNA_1b803f00-f052-431a-8f8f-4c2896b73b68"
      unitRef="usd">4335000</us-gaap:OtherInventory>
    <us-gaap:InventoryNet
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfNC0xLTEtMS0xNjYzNA_79dd3bb9-4784-45c4-aa10-a401a8e322f8"
      unitRef="usd">28692000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RhYmxlOjFhOWVkYWNiZTY5MTQ2NWM4NjgyMmU3MWQyOTU3MmNjL3RhYmxlcmFuZ2U6MWE5ZWRhY2JlNjkxNDY1Yzg2ODIyZTcxZDI5NTcyY2NfNC0zLTEtMS0xNjYzNA_07ff6446-5ff9-4484-b94b-9a54390695a3"
      unitRef="usd">23598000</us-gaap:InventoryNet>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RleHRyZWdpb246NmY3YWE1NTdhZjA2NGYxMDg3MmVlMDk4Mzk5ZmQ1N2FfMTIwMw_45515dc3-84d0-4a2a-895d-b52f9a5c1b2c">Inventories are valued at the lower of cost (first-in, first-out) or net realizable value.&#160;Inventory costs include the cost of raw materials, packaging supplies, labor and other overhead costs.</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:InventoryValuationReserves
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RleHRyZWdpb246NmY3YWE1NTdhZjA2NGYxMDg3MmVlMDk4Mzk5ZmQ1N2FfNzY2_bdb23570-307c-4443-807a-9477f007aa8b"
      unitRef="usd">621000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl80OS9mcmFnOjZmN2FhNTU3YWYwNjRmMTA4NzJlZTA5ODM5OWZkNTdhL3RleHRyZWdpb246NmY3YWE1NTdhZjA2NGYxMDg3MmVlMDk4Mzk5ZmQ1N2FfNzcz_c2af50ad-0b81-4f90-aba4-b3e653169c5b"
      unitRef="usd">641000</us-gaap:InventoryValuationReserves>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81Mi9mcmFnOmY0MzE5NjQ3YmYyMDQ0ZGZiZWZiMTkxYWMwMDYwNTBlL3RleHRyZWdpb246ZjQzMTk2NDdiZjIwNDRkZmJlZmIxOTFhYzAwNjA1MGVfMTg1MQ_fa02296a-6471-431a-99e1-3348587334d1">FAIR VALUE MEASUREMENTS&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height: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.&#160;The inputs used to measure fair value are prioritized into categories based on the lowest level of input that is significant to the fair value measurement.&#160;The categories in the fair value hierarchy are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 1: Quoted market prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:54pt;text-align:justify;text-indent:-36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 2: Observable market-based inputs for similar assets or liabilities or valuation models whose inputs are observable, directly or indirectly.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 3: Unobservable inputs.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash equivalents are primarily money market mutual funds classified as Level 1. We had no cash equivalents as of October 31,  2021 and July 31, 2021. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Balances of accounts receivable and accounts payable approximated their fair values at October&#160;31, 2021 and July&#160;31, 2021 due to the short maturity and nature of those balances.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Notes payable are reported at the face amount of future maturities.&#160;The estimated fair value of notes payable, including current maturities, was $10,266,000 and $10,231,000 as of October&#160;31, 2021 and July&#160;31, 2021, respectively, and are classified as Level 2. The fair value was estimated using the exit price notion of fair value. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We apply fair value techniques on at least an annual basis associated with: (1) valuing potential impairment loss related to goodwill, trademarks and other indefinite-lived intangible assets and (2) valuing potential impairment loss related to long-lived assets. See Note 5 of the Notes to the unaudited Condensed Consolidated Financial Statements for further information about goodwill and other intangible assets.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81Mi9mcmFnOmY0MzE5NjQ3YmYyMDQ0ZGZiZWZiMTkxYWMwMDYwNTBlL3RleHRyZWdpb246ZjQzMTk2NDdiZjIwNDRkZmJlZmIxOTFhYzAwNjA1MGVfMTg1OA_be8c8966-3db8-4000-9855-7a08f52ff1e6">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height: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.&#160;The inputs used to measure fair value are prioritized into categories based on the lowest level of input that is significant to the fair value measurement.&#160;The categories in the fair value hierarchy are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 1: Quoted market prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:54pt;text-align:justify;text-indent:-36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 2: Observable market-based inputs for similar assets or liabilities or valuation models whose inputs are observable, directly or indirectly.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 3: Unobservable inputs.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="i79bd67e3a230413f8770f9b6847dff7f_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81Mi9mcmFnOmY0MzE5NjQ3YmYyMDQ0ZGZiZWZiMTkxYWMwMDYwNTBlL3RleHRyZWdpb246ZjQzMTk2NDdiZjIwNDRkZmJlZmIxOTFhYzAwNjA1MGVfNzg2_b2e403b4-25f6-45e8-9cb3-b2306116722f"
      unitRef="usd">0</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="ifd9007a476f645f4b8c5a303532e459e_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81Mi9mcmFnOmY0MzE5NjQ3YmYyMDQ0ZGZiZWZiMTkxYWMwMDYwNTBlL3RleHRyZWdpb246ZjQzMTk2NDdiZjIwNDRkZmJlZmIxOTFhYzAwNjA1MGVfNzg2_d1804b45-44cc-4928-bedf-db18d050ccb1"
      unitRef="usd">0</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="i2b9751520c1d44b3ba0a5552e8b64991_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81Mi9mcmFnOmY0MzE5NjQ3YmYyMDQ0ZGZiZWZiMTkxYWMwMDYwNTBlL3RleHRyZWdpb246ZjQzMTk2NDdiZjIwNDRkZmJlZmIxOTFhYzAwNjA1MGVfMTI4OA_88e68526-659e-4ce9-b1f6-a4e33157a9c6"
      unitRef="usd">10266000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="id0162ba53aca450da41819a9ae57b5e3_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81Mi9mcmFnOmY0MzE5NjQ3YmYyMDQ0ZGZiZWZiMTkxYWMwMDYwNTBlL3RleHRyZWdpb246ZjQzMTk2NDdiZjIwNDRkZmJlZmIxOTFhYzAwNjA1MGVfMTI5NQ_f466d994-7704-4422-ad35-3d3039e1698a"
      unitRef="usd">10231000</us-gaap:LongTermDebtFairValue>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfMTA1Nw_58002e26-29ca-4200-b5a2-944b58ca16da">GOODWILL AND OTHER INTANGIBLE ASSETS&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Intangible assets, other than goodwill, include trademarks, patents, customer lists and product registrations. Intangible amortization expense was $115,000 and $155,000 in the first three months of fiscal years 2022 and 2021, respectively. Estimated intangible amortization for the remainder of fiscal year 2022 is $370,000. Estimated intangible amortization for the next five fiscal years 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:21.783%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.014%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.786%"/&gt;&lt;td style="width:0.1%"/&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;2023&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;247&#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;2024&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;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;/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;2025&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;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;/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;2026&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;83&#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;2027&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;81&#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="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have one acquired trademark recorded at a cost of $376,000 that was determined to have an indefinite life and is not amortized.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We performed our annual goodwill impairment analysis in the fourth quarter of fiscal year 2021 and no impairment was identified. There have been no triggering events that would indicate a new impairment analysis is needed. &lt;/span&gt;&lt;span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A&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;lthough we have not identified any triggering events relating to goodwill or our intangibles, the ultimate effects of COVID-19 could change this assessment in the future.&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfMjk5_316cb19b-5a94-445e-9b6d-b0be121489e9"
      unitRef="usd">115000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfMzA2_0769f1f0-cbd1-403a-b587-9152013c73fc"
      unitRef="usd">155000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfNDMy_1ce75621-b523-4e69-917e-3d112d7ef5b1"
      unitRef="usd">370000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfMTA2NA_481bccf0-179f-4bf8-ba51-a0696d38c3cf">Estimated intangible amortization for the next five fiscal years is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:21.783%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.014%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.786%"/&gt;&lt;td style="width:0.1%"/&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;2023&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;247&#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;2024&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;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;/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;2025&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;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;/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;2026&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;83&#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;2027&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;81&#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;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RhYmxlOmMwODY1YWIwYTE5NjQ4NjFhZTA5NWFmODA3ZWZmNGFkL3RhYmxlcmFuZ2U6YzA4NjVhYjBhMTk2NDg2MWFlMDk1YWY4MDdlZmY0YWRfMC0xLTEtMS0xNjYzNA_98a9d018-a5fd-4b13-a2f5-8e08ca454ac6"
      unitRef="usd">247000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RhYmxlOmMwODY1YWIwYTE5NjQ4NjFhZTA5NWFmODA3ZWZmNGFkL3RhYmxlcmFuZ2U6YzA4NjVhYjBhMTk2NDg2MWFlMDk1YWY4MDdlZmY0YWRfMS0xLTEtMS0xNjYzNA_6b691fc2-bd00-4f3d-ac22-e44c159ed4a0"
      unitRef="usd">111000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RhYmxlOmMwODY1YWIwYTE5NjQ4NjFhZTA5NWFmODA3ZWZmNGFkL3RhYmxlcmFuZ2U6YzA4NjVhYjBhMTk2NDg2MWFlMDk1YWY4MDdlZmY0YWRfMi0xLTEtMS0xNjYzNA_a35241fc-bcf2-4a11-810f-f34a15e3b5c1"
      unitRef="usd">86000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RhYmxlOmMwODY1YWIwYTE5NjQ4NjFhZTA5NWFmODA3ZWZmNGFkL3RhYmxlcmFuZ2U6YzA4NjVhYjBhMTk2NDg2MWFlMDk1YWY4MDdlZmY0YWRfMy0xLTEtMS0xNjYzNA_c41e12c9-8a06-4262-8d1b-b7275128f67f"
      unitRef="usd">83000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RhYmxlOmMwODY1YWIwYTE5NjQ4NjFhZTA5NWFmODA3ZWZmNGFkL3RhYmxlcmFuZ2U6YzA4NjVhYjBhMTk2NDg2MWFlMDk1YWY4MDdlZmY0YWRfNC0xLTEtMS0xNjYzNA_cb2324de-2a2b-4b99-aeac-661ab05bc503"
      unitRef="usd">81000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfNTg4_2c2fc317-3aaf-43e4-a9d5-da8814db240c"
      unitRef="usd">376000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="iaace6c93e13044a58cb5a019be6d7d4c_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl81OC9mcmFnOmM5YjkyNDY4MDRhNTRmM2FiOWU0ZmMzZjRhM2MwOTc0L3RleHRyZWdpb246YzliOTI0NjgwNGE1NGYzYWI5ZTRmYzNmNGEzYzA5NzRfNzU4_e939f18f-11f7-48da-9d7f-03c3dccc7754"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RleHRyZWdpb246OTU2ZmEzNTI2ZDkyNDA2NGFjZDg0ZThlNWI2ZTk3ZTRfNzIz_078499d4-f43d-48f7-a10a-a068b1512075">ACCRUED EXPENSES&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued expenses is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.590%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.975%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.706%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.709%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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;October 31,&lt;br/&gt;2021&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;July 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;Salaries, Wages, Commissions and Employee Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-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:700;line-height:100%"&gt;7,802&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;10,806&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;Trade promotions and advertising&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:700;line-height:100%"&gt;1,989&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,653&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;Freight&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:700;line-height:100%"&gt;2,832&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:700;line-height:100%"&gt;2,845&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;Real Estate Tax&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:700;line-height:100%"&gt;1,386&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,002&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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&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:700;line-height:100%"&gt;9,737&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:700;line-height:100%"&gt;8,577&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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="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:700;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:700;line-height:100%"&gt;23,746&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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:700;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:700;line-height:100%"&gt;24,883&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&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 decrease in salaries, wages, commissions and employee benefits relates primarily to the payment of annual discretionary bonuses during the first quarter of fiscal year 2022. The accrual for other is higher at October 31, 2021 than July 31, 2021 due to an increase in professional fees, accrual for rising natural gas costs and timing of certain plant accruals.&lt;/span&gt;&lt;/div&gt;</us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock>
    <us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RleHRyZWdpb246OTU2ZmEzNTI2ZDkyNDA2NGFjZDg0ZThlNWI2ZTk3ZTRfNzI0_768ba5c0-456b-404a-8f79-b32c932cd0ed">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued expenses is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.590%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.975%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.706%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.709%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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;October 31,&lt;br/&gt;2021&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;July 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;Salaries, Wages, Commissions and Employee Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-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:700;line-height:100%"&gt;7,802&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;10,806&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;Trade promotions and advertising&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:700;line-height:100%"&gt;1,989&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,653&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;Freight&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:700;line-height:100%"&gt;2,832&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:700;line-height:100%"&gt;2,845&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;Real Estate Tax&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:700;line-height:100%"&gt;1,386&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,002&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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&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:700;line-height:100%"&gt;9,737&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:700;line-height:100%"&gt;8,577&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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="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:700;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:700;line-height:100%"&gt;23,746&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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:700;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:700;line-height:100%"&gt;24,883&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfMS0yLTEtMS0xNjYzNA_a7d60636-4cd5-428a-a667-a782bc7c78ba"
      unitRef="usd">7802000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfMS00LTEtMS0xNjYzNA_e828f7f6-dac3-4281-b52e-e7702363277c"
      unitRef="usd">10806000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedMarketingCostsCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfMi0yLTEtMS0xNjYzNA_ddfe9c8f-8e3d-4800-9be5-1d46737c1c71"
      unitRef="usd">1989000</us-gaap:AccruedMarketingCostsCurrent>
    <us-gaap:AccruedMarketingCostsCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfMi00LTEtMS0xNjYzNA_f357bee9-1099-4775-a081-5ba35a934f3b"
      unitRef="usd">1653000</us-gaap:AccruedMarketingCostsCurrent>
    <odc:AccruedFreight
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfMy0yLTEtMS0xNjYzNA_f3e4f059-f28b-443b-895f-9105d01a2c58"
      unitRef="usd">2832000</odc:AccruedFreight>
    <odc:AccruedFreight
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfMy00LTEtMS0xNjYzNA_882c2512-c28e-4657-9f6b-338f8e51563e"
      unitRef="usd">2845000</odc:AccruedFreight>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfNC0yLTEtMS0xNjYzNA_856869dd-b6be-4234-9324-4e8cab7a9854"
      unitRef="usd">1386000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfNC00LTEtMS0xNjYzNA_f055aa17-0968-4ebd-a1f3-210ad8884b74"
      unitRef="usd">1002000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfNS0yLTEtMS0xNjYzNA_2d4a1cd5-d704-466a-9be6-eeae6568ce52"
      unitRef="usd">9737000</us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfNS00LTEtMS0xNjYzNA_d9ca3d7a-6087-4502-842b-a4dc385790bd"
      unitRef="usd">8577000</us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfNi0yLTEtMS0xNjYzNA_4e04ccad-3eb2-4bf6-8f51-3708a0247810"
      unitRef="usd">23746000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82MS9mcmFnOjk1NmZhMzUyNmQ5MjQwNjRhY2Q4NGU4ZTViNmU5N2U0L3RhYmxlOjc5MjQwZTg4NWM0YzRjODE4MzI1Y2NlMDNhMTc0ODZmL3RhYmxlcmFuZ2U6NzkyNDBlODg1YzRjNGM4MTgzMjVjY2UwM2ExNzQ4NmZfNi00LTEtMS0xNjYzNA_a7ff5891-54eb-4dca-8b78-abee618b9445"
      unitRef="usd">24883000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LegalMattersAndContingenciesTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82NC9mcmFnOjQ4ZTRhYzk1ZTcxNzRkZTJiYmM2YmRjNGVlZDYwYWE4L3RleHRyZWdpb246NDhlNGFjOTVlNzE3NGRlMmJiYzZiZGM0ZWVkNjBhYThfMTUyNg_def4eb9d-2c0a-44cc-b43a-6aaf192885cf">OTHER CONTINGENCIESWe are party to various legal actions from time to time that are ordinary in nature and incidental to the operation of our business, including ongoing litigation. While it is not possible at this time to determine with certainty the ultimate outcome of these or other lawsuits, we believe that none of the pending proceedings will have a material adverse effect on our business, financial condition, results of operations or cash flows. In June 2020, the Company received notice from a former service provider alleging a breach of contract regarding the payment of a contingency fee. Such party subsequently, in July 2020, filed a lawsuit seeking to require the Company to participate in binding mediation regarding this matter. Although we believe this claim to be without merit, as of July 31, 2020, we have determined a reasonable estimate of this liability within a range, with no amount within that range being a better estimate than any other amount, and have therefore recorded that estimate in Other within Accrued expenses. There have been no changes during fiscal 2021 or the three months ended October 31, 2021 that would have changed this estimate. We believe that any loss related to this matter is unlikely to be material. However, the outcome of this legal matter is subject to significant uncertainties. The ability to predict the ultimate outcome of this legal matter involves judgments, estimates and inherent uncertainties. The actual outcome could differ materially from management&#x2019;s estimates.</us-gaap:LegalMattersAndContingenciesTextBlock>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RleHRyZWdpb246YmNjYWM5ZjUxZmEzNDdjZDhlMDc5MjE2YWUxNjM2OGRfMTk2NQ_eef8a1e9-dc17-4ae6-a3d3-0bfd4b169471">LEASES&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have operating leases primarily for real estate properties, including corporate headquarters, customer service and sales offices, manufacturing and packaging facilities, warehouses, and research and development facilities, as well as for rail tracks, railcars and office equipment. Certain of our leases for a shared warehouse and office facility, rail track and railcars have options to extend which we are reasonably certain we will exercise and, accordingly, have been considered in the lease term used to recognize our ROU assets and lease liabilities. To determine the present value of the lease liability, we use an incremental borrowing rate, which is defined as the rate of interest that the Company would have to pay to borrow (on a collateralized basis over a similar term) an amount equal to the lease payments in similar economic environments. Further information about our accounting policy for leases is included in Note 1 of the Notes to the unaudited Condensed Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have no material finance leases, and variable costs for operating leases are immaterial for the first quarter of fiscal year 2022. Operating lease costs are included in Cost of Sales or SG&amp;amp;A expenses based on the nature of the lease. The following table summarizes total lease costs for our operating leases (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:283.50pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:133.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td 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.0pt"/&gt;&lt;td style="width:6.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:64.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:6.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:64.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" rowspan="2" 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;For the Three Months Ended October 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;Operating Lease Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#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 lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;634&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;695&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="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:700;line-height:100%"&gt;149&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;186&#160;&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="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information related to leases was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:383.25pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:250.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td 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.0pt"/&gt;&lt;td style="width:1.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:60.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:60.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" rowspan="2" 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;For the Three Months Ended October 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;Other Information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr style="height:24pt"&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;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#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 style="height:15pt"&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;&#160;&#160;Operating cash flows from operating leases&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="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;561&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;602&#160;&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 style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating lease ROU assets and operating lease liabilities are separately presented on the unaudited Condensed Consolidated Balance Sheet, excluding leases with an initial term of twelve months or less. Other supplemental balance sheet information related to leases was as follows:&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:56.181%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.981%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.354%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.984%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;October 31, 2021&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;July 31, 2021&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;/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="display:none"/&gt;&lt;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="display:none"/&gt;&lt;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="display:none"/&gt;&lt;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:700;line-height:100%"&gt;Weighted-average remaining lease term - operating leases&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:10pt;font-weight:700;line-height:100%"&gt;9.2 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;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.1 years&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;/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:#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;Weighted-average discount rate - operating leases&lt;/span&gt;&lt;/td&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:700;line-height:100%"&gt;3.88%&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;3.88%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes scheduled minimum future lease payments due within twelve months for operating leases with terms longer than one year for which cash flows are fixed and determinable as of October&#160;31, (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:40.058%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.302%"/&gt;&lt;td style="width:0.1%"/&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;/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;/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&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:700;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:700;line-height:100%"&gt;1,687&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;1,335&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;1,180&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;1,097&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;856&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;5,354&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;Total&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:700;line-height:100%"&gt;11,509&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;Less: imputed interest&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:700;line-height:100%"&gt;(1,979)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/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 lease obligation&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:700;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:700;line-height:100%"&gt;9,530&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RleHRyZWdpb246YmNjYWM5ZjUxZmEzNDdjZDhlMDc5MjE2YWUxNjM2OGRfMTk2Mg_beb5c9cf-50a4-4185-a91f-ec282cf562e4">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have no material finance leases, and variable costs for operating leases are immaterial for the first quarter of fiscal year 2022. Operating lease costs are included in Cost of Sales or SG&amp;amp;A expenses based on the nature of the lease. The following table summarizes total lease costs for our operating leases (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:283.50pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:133.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td 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.0pt"/&gt;&lt;td style="width:6.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:64.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:6.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:64.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" rowspan="2" 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;For the Three Months Ended October 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;Operating Lease Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#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 lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;634&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;695&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="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:700;line-height:100%"&gt;149&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;186&#160;&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="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information related to leases was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:383.25pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:250.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td 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.0pt"/&gt;&lt;td style="width:1.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:60.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:60.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" rowspan="2" 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;For the Three Months Ended October 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;Other Information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr style="height:24pt"&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;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#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 style="height:15pt"&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;&#160;&#160;Operating cash flows from operating leases&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="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;561&#160;&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 style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;602&#160;&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 style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating lease ROU assets and operating lease liabilities are separately presented on the unaudited Condensed Consolidated Balance Sheet, excluding leases with an initial term of twelve months or less. Other supplemental balance sheet information related to leases was as follows:&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:56.181%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.981%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.354%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.984%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;October 31, 2021&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;July 31, 2021&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;/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="display:none"/&gt;&lt;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="display:none"/&gt;&lt;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="display:none"/&gt;&lt;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:700;line-height:100%"&gt;Weighted-average remaining lease term - operating leases&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:10pt;font-weight:700;line-height:100%"&gt;9.2 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;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.1 years&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;/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:#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;Weighted-average discount rate - operating leases&lt;/span&gt;&lt;/td&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:700;line-height:100%"&gt;3.88%&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;3.88%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOjM2Y2Q5YzU3MDQwYjRkM2ZiZjYyNjdjMDA2NDU4Zjk3L3RhYmxlcmFuZ2U6MzZjZDljNTcwNDBiNGQzZmJmNjI2N2MwMDY0NThmOTdfNC01LTEtMS0xNjYzNA_1f21b3df-b4b0-4032-a309-baf0be249168"
      unitRef="usd">634000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOjM2Y2Q5YzU3MDQwYjRkM2ZiZjYyNjdjMDA2NDU4Zjk3L3RhYmxlcmFuZ2U6MzZjZDljNTcwNDBiNGQzZmJmNjI2N2MwMDY0NThmOTdfNC03LTEtMS0xNjYzNA_16b0b9e1-c21e-49d5-91ab-88b0069e5c63"
      unitRef="usd">695000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOjM2Y2Q5YzU3MDQwYjRkM2ZiZjYyNjdjMDA2NDU4Zjk3L3RhYmxlcmFuZ2U6MzZjZDljNTcwNDBiNGQzZmJmNjI2N2MwMDY0NThmOTdfNS01LTEtMS0xNjYzNA_ebce7b24-8408-4129-bf6b-62f21b60c46b"
      unitRef="usd">149000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOjM2Y2Q5YzU3MDQwYjRkM2ZiZjYyNjdjMDA2NDU4Zjk3L3RhYmxlcmFuZ2U6MzZjZDljNTcwNDBiNGQzZmJmNjI2N2MwMDY0NThmOTdfNS03LTEtMS0xNjYzNA_c71d3686-b9cf-4f12-aaef-0c3c1baf831f"
      unitRef="usd">186000</us-gaap:ShortTermLeaseCost>
    <us-gaap:OperatingLeasePayments
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOjYzYWE0YzE2ZTZiOTQ1MjA4YWI0NWE4NzEzYmFmNDE4L3RhYmxlcmFuZ2U6NjNhYTRjMTZlNmI5NDUyMDhhYjQ1YTg3MTNiYWY0MThfNS01LTEtMS0xNjYzNA_1bb053cb-ae60-4c68-9871-d7fd7534cf8d"
      unitRef="usd">561000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOjYzYWE0YzE2ZTZiOTQ1MjA4YWI0NWE4NzEzYmFmNDE4L3RhYmxlcmFuZ2U6NjNhYTRjMTZlNmI5NDUyMDhhYjQ1YTg3MTNiYWY0MThfNS03LTEtMS0xNjYzNA_95d22564-1fe9-445f-a0c8-d6dfc2304017"
      unitRef="usd">602000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmJhNzE4NzcyMTQ3YzQwNzhiNmQzNzJhYjE0MGQyMjU4L3RhYmxlcmFuZ2U6YmE3MTg3NzIxNDdjNDA3OGI2ZDM3MmFiMTQwZDIyNThfMTAtMS0xLTEtMTY2MzQ_eab82821-6357-4be9-89d7-3ed7635856b4">P9Y2M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmJhNzE4NzcyMTQ3YzQwNzhiNmQzNzJhYjE0MGQyMjU4L3RhYmxlcmFuZ2U6YmE3MTg3NzIxNDdjNDA3OGI2ZDM3MmFiMTQwZDIyNThfMTAtMy0xLTEtMTY2MzQ_3ffe3be3-6bb7-48ee-b560-c1f3b8045410">P9Y1M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmJhNzE4NzcyMTQ3YzQwNzhiNmQzNzJhYjE0MGQyMjU4L3RhYmxlcmFuZ2U6YmE3MTg3NzIxNDdjNDA3OGI2ZDM3MmFiMTQwZDIyNThfMTMtMS0xLTEtMTY2MzQ_17fb5477-0761-4184-8f53-a3ee3ed7396a"
      unitRef="number">0.0388</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmJhNzE4NzcyMTQ3YzQwNzhiNmQzNzJhYjE0MGQyMjU4L3RhYmxlcmFuZ2U6YmE3MTg3NzIxNDdjNDA3OGI2ZDM3MmFiMTQwZDIyNThfMTMtMy0xLTEtMTY2MzQ_93e2bd6c-3800-405e-99e6-76844a69e7a9"
      unitRef="number">0.0388</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RleHRyZWdpb246YmNjYWM5ZjUxZmEzNDdjZDhlMDc5MjE2YWUxNjM2OGRfMTk2Mw_b5258695-def3-4ce3-b374-3ccdc4f0212f">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes scheduled minimum future lease payments due within twelve months for operating leases with terms longer than one year for which cash flows are fixed and determinable as of October&#160;31, (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:40.058%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.302%"/&gt;&lt;td style="width:0.1%"/&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;/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;/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&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:700;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:700;line-height:100%"&gt;1,687&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;1,335&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;1,180&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;1,097&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;856&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;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:700;line-height:100%"&gt;5,354&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;Total&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:700;line-height:100%"&gt;11,509&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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;Less: imputed interest&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:700;line-height:100%"&gt;(1,979)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/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 lease obligation&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:700;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:700;line-height:100%"&gt;9,530&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfMi0xLTEtMS0xNjYzNA_65d68b5e-b171-462d-8275-0652c8727fd1"
      unitRef="usd">1687000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfMy0xLTEtMS0xNjYzNA_8df29d1d-037c-424d-9395-d28072cf506f"
      unitRef="usd">1335000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfNC0xLTEtMS0xNjYzNA_3f72d46e-a80e-4fd4-a2df-b0b4e4d9bae3"
      unitRef="usd">1180000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfNS0xLTEtMS0xNjYzNA_f371f790-eaa1-4f18-81e3-1723e7e25254"
      unitRef="usd">1097000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfNi0xLTEtMS0xNjYzNA_76bde8ad-3dcd-4e43-a607-415892379209"
      unitRef="usd">856000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfNy0xLTEtMS0xNjYzNA_704a924d-719a-4640-8028-bfb9725097ab"
      unitRef="usd">5354000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfOC0xLTEtMS0xNjYzNA_880d3727-e898-4df7-ba64-c61955d7297d"
      unitRef="usd">11509000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfOS0xLTEtMS0xNjYzNA_e32aa251-0675-4876-8e36-fdbf80bea023"
      unitRef="usd">1979000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl82Ny9mcmFnOmJjY2FjOWY1MWZhMzQ3Y2Q4ZTA3OTIxNmFlMTYzNjhkL3RhYmxlOmYwNTkzMjNmN2YyYjQ3YzI5ZmZhZmM3ZTk5M2Q4YTBkL3RhYmxlcmFuZ2U6ZjA1OTMyM2Y3ZjJiNDdjMjlmZmFmYzdlOTkzZDhhMGRfMTAtMS0xLTEtMTY2MzQ_d34ce07f-d328-4fd1-8c01-31828194d15d"
      unitRef="usd">9530000</us-gaap:OperatingLeaseLiability>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMzIzNw_1d134144-db3f-4368-8725-07c3c7dc93db">PENSION AND OTHER POSTRETIREMENT BENEFITS&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Pension and Postretirement Health Benefits&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Oil-Dri Corporation of America Pension Plan (&#x201c;Pension Plan&#x201d;) is a defined benefit pension plan for eligible salaried and hourly employees. Pension benefits are based on a formula of years of credited service and levels of compensation or stated amounts for each year of credited service. On January 9, 2020, we amended the Pension Plan to freeze participation, all future benefit accruals and accrual of benefit service, including consideration of compensation increases, effective March 1, 2020. Consequently, the Pension Plan is closed to new participants and current participants no longer earn additional benefits on or after March 1, 2020. On May 4, 2021 we purchased a pension annuity which settled $8.5 million of projected benefit obligations and recognized a settlement loss of approximately $.6 million due to the annuity purchase. &#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of net periodic pension and postretirement health benefit costs were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:1pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.651%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.497%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.082%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.536%"/&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="3" style="display:none"/&gt;&lt;td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pension Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#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="12" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;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="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:10pt;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:10pt;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;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="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:700;line-height:100%"&gt;268&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;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="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:700;line-height:100%"&gt;(647)&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;Amortization of:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Other actuarial 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="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:700;line-height:100%"&gt;37&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;170&#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:700;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-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:700;line-height:100%"&gt;(342)&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;170&#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 style="height:6pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Postretirement Health Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#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="12" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;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="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:10pt;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:10pt;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;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="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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;33&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;35&#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="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:700;line-height:100%"&gt;16&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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&#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;Amortization of:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Prior service costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(1)&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)&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:700;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-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:700;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:700;line-height:100%"&gt;48&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #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:#cceeff;padding:0 1pt"/&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;47&#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;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The non-service cost components of net periodic benefit cost are included in Other Income (Expense) in the line item Other, net on the unaudited Condensed Consolidated Statements of Income. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Pension Plan is funded based upon actuarially determined contributions that take into account the amount deductible for income tax purposes, the normal cost and the minimum contribution required and the maximum contribution allowed under applicable regulations.&lt;/span&gt;&lt;span style="color:#ff0000;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;We were not required to make, and did not voluntarily make, a contribution to the Pension Plan during the first three months of fiscal year 2022. We have no minimum funding requirements for the remainder of fiscal year 2022. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The postretirement health plan is an unfunded plan. We pay insurance premiums and claims from our assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assumptions used in the previous calculations were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&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:90.058%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.077%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pension Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Postretirement Health Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:10pt;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:10pt;font-weight:700;line-height:100%"&gt;2020&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:10pt;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:10pt;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;Discount rate for net periodic benefit cost&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:700;line-height:100%"&gt;2.57&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td 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;2.14&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;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:700;line-height:100%"&gt;2.10&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td 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;1.63&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;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;Rate of increase in compensation levels&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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&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;&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;Long-term expected rate of return on assets&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:700;line-height:100%"&gt;6.50&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&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;6.50&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The medical cost trend assumption for postretirement health benefits was 7.05%. The graded trend rate is expected to decrease to an ultimate rate of 4.50% in fiscal year 2038.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Supplemental Executive Retirement Plan&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Oil-Dri Corporation of America Supplemental Executive Retirement Plan (&#x201c;SERP&#x201d;) provided certain retired participants in the Pension Plan with the amount of benefits that would have been provided under the Pension Plan but for: (1) the limitations on benefits imposed by Section 415 of the Internal Revenue Code (&#x201c;Code&#x201d;) and/or (2) the limitation on compensation for purposes of calculating benefits under the Pension Plan imposed by Section 401(a)(17) of the Code. The SERP liability was actuarially determined at the end of each fiscal year using assumptions similar to those used for the Pension Plan. &lt;/span&gt;&lt;/div&gt;On January 9, 2020, we amended the SERP to freeze participation and any excess benefit, supplemental benefit or additional benefit effective March 1, 2020. Consequently, the SERP was closed to new participants and current participants no longer earned additional benefits on or after March 1, 2020. The SERP was terminated effective June 30, 2020 and all participants were paid in the form of one lump sum in July 2021.</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DefinedBenefitPlanSettlementsPlanAssets
      contextRef="i06a8ea4541fc4e60974ba915da4a0785_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMjc0ODc3OTA3MzE5Mg_5b364d46-3aab-4bc0-b830-61aa8a086b42"
      unitRef="usd">8500000</us-gaap:DefinedBenefitPlanSettlementsPlanAssets>
    <us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlements1
      contextRef="i06a8ea4541fc4e60974ba915da4a0785_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMjc0ODc3OTA3MzI4Nw_3df7289c-fbd3-4b26-b89b-eac51df2c48c"
      unitRef="usd">600000</us-gaap:DefinedBenefitPlanRecognizedNetGainLossDueToSettlements1>
    <us-gaap:ScheduleOfNetBenefitCostsTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMzIzMg_c19594bf-5ea2-4213-af96-6018f4296af7">The components of net periodic pension and postretirement health benefit costs were as follows:&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.651%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.497%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.082%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.536%"/&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="3" style="display:none"/&gt;&lt;td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pension Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#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="12" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;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="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:10pt;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:10pt;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;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="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:700;line-height:100%"&gt;268&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;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="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:700;line-height:100%"&gt;(647)&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;Amortization of:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Other actuarial 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="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:700;line-height:100%"&gt;37&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;170&#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:700;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-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:700;line-height:100%"&gt;(342)&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;170&#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 style="height:6pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Postretirement Health Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#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="12" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;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="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:10pt;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:10pt;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;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="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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;33&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;35&#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="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:700;line-height:100%"&gt;16&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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&#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;Amortization of:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Prior service costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(1)&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)&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:700;line-height:100%"&gt;Net periodic benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-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:700;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:700;line-height:100%"&gt;48&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #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:#cceeff;padding:0 1pt"/&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;47&#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;</us-gaap:ScheduleOfNetBenefitCostsTableTextBlock>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfNS01LTEtMS0xNjYzNA_a2813186-e904-420a-8d94-bb4e87782870"
      unitRef="usd">268000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfNS03LTEtMS0xNjYzNA_c2e667a9-303e-428d-8bb9-516a5f1df91f"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfNi01LTEtMS0xNjYzNA_a5d452ab-0a0f-4556-8dcb-2e30327b791d"
      unitRef="usd">647000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfNi03LTEtMS0xNjYzNA_a599c437-b72d-4bbd-b68d-bbbbb8f49b35"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfOC01LTEtMS0xNjYzNA_cd73cb5a-ac0a-4f6c-9213-29a5280845f4"
      unitRef="usd">-37000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfOC03LTEtMS0xNjYzNA_8c3ebf3a-125a-4b1e-85bc-221786dcb74d"
      unitRef="usd">-170000</us-gaap:DefinedBenefitPlanAmortizationOfGainsLosses>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfOS01LTEtMS0xNjYzNA_9ed85f1f-2c51-43ae-b1c4-114e3489e480"
      unitRef="usd">-342000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfOS03LTEtMS0xNjYzNA_38a3a67f-1abe-4c1a-b0b3-9c9be22cfcbe"
      unitRef="usd">170000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMTUtNS0xLTEtMTY2MzQ_4ad0a38c-5495-4b71-a7db-4f0fd7918394"
      unitRef="usd">33000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMTUtNy0xLTEtMTY2MzQ_54f33365-f48b-4b7f-b3be-2f027f49ef8a"
      unitRef="usd">35000</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMTYtNS0xLTEtMTY2MzQ_36337e9b-be1b-47eb-bf97-4ba8f498a123"
      unitRef="usd">16000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMTYtNy0xLTEtMTY2MzQ_0594083c-6abd-408b-b1b6-0d738b13a463"
      unitRef="usd">13000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMTgtNS0xLTEtMTY2MzQ_9de5cd3f-026e-4927-9012-810098ce50aa"
      unitRef="usd">-1000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMTgtNy0xLTEtMTY2MzQ_ff8364b4-3013-45aa-9987-ec0813e442f1"
      unitRef="usd">-1000</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMjAtNS0xLTEtMTY2MzQ_1715f794-a5cc-47b4-907c-a42119678a71"
      unitRef="usd">48000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmMxNDViNDk2ODVlNTRjNWE4NjEwNWRiZDRjNTk2NmQ2L3RhYmxlcmFuZ2U6YzE0NWI0OTY4NWU1NGM1YTg2MTA1ZGJkNGM1OTY2ZDZfMjAtNy0xLTEtMTY2MzQ_ede40a54-7a07-4c78-b095-fce9ce31d0f2"
      unitRef="usd">47000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <odc:DefinedBenefitPlanVoluntaryContribution
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMTM0Ng_da5b11bb-6d9f-431c-a3a6-159068d660bd"
      unitRef="usd">0</odc:DefinedBenefitPlanVoluntaryContribution>
    <us-gaap:DefinedBenefitPlanExpectedFutureEmployerContributionsRemainderOfFiscalYear
      contextRef="i84190f66d19b48fbb6abb77d3a7afbb9_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMTQ1Nw_d8271704-51ed-45e6-a6dc-0003c33f61c7"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanExpectedFutureEmployerContributionsRemainderOfFiscalYear>
    <us-gaap:ScheduleOfAssumptionsUsedTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMzIyNg_35080132-ec01-4f9a-aa65-ff45b96a5257">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assumptions used in the previous calculations were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&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:90.058%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.075%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.077%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pension Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Postretirement Health Benefits&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:10pt;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:10pt;font-weight:700;line-height:100%"&gt;2020&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:10pt;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:10pt;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;Discount rate for net periodic benefit cost&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:700;line-height:100%"&gt;2.57&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td 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;2.14&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;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:700;line-height:100%"&gt;2.10&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td 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;1.63&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;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;Rate of increase in compensation levels&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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&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;&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;Long-term expected rate of return on assets&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:700;line-height:100%"&gt;6.50&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&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;6.50&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The medical cost trend assumption for postretirement health benefits was 7.05%. The graded trend rate is expected to decrease to an ultimate rate of 4.50% in fiscal year 2038.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAssumptionsUsedTableTextBlock>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfMy0xLTEtMS0xNjYzNA_ff4a912d-f4e0-4db7-b61f-075ccf253239"
      unitRef="number">0.0257</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfMy0zLTEtMS0xNjYzNA_e7395be2-0f74-4809-9a36-f9a27cf8e252"
      unitRef="number">0.0214</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfMy01LTEtMS0xNjYzNA_2d8a9060-6cbb-4481-a373-1a0b54cbc38b"
      unitRef="number">0.0210</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfMy03LTEtMS0xNjYzNA_f3898ef6-9b1e-456d-8a0d-41f70f27aa0d"
      unitRef="number">0.0163</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNC0xLTEtMS0xNjYzNA_13705ba0-3b6e-4543-8f21-7e78a0366978"
      unitRef="number">0</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNC0zLTEtMS0xNjYzNA_dbb2c2ed-e006-4a53-91df-a0c6a6da731e"
      unitRef="number">0</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNC01LTEtMS0xNjYzNA_22e6220b-7901-4c11-9e49-3fb245dedb6e"
      unitRef="number">0</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNC03LTEtMS0xNjYzNA_22212810-8532-4a42-8691-6c4c6fa7fdad"
      unitRef="number">0</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="i665230a977eb47be88a0dacbb5d38873_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNS0xLTEtMS0xNjYzNA_e6ab68a9-9b46-4ae5-9175-02dfad54148f"
      unitRef="number">0.0650</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="i0fa80ac0c71040fb9e255afbbab4859b_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNS0zLTEtMS0xNjYzNA_c8e5bb01-db32-4b39-a9f8-f4c1916e1855"
      unitRef="number">0.0650</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNS01LTEtMS0xNjYzNA_15c71887-e40d-45bd-b35e-177e55e4a2b1"
      unitRef="number">0</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
      contextRef="i5f530fadc7484b26b7735d8c72b5ec44_D20200801-20201031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RhYmxlOmZmNjk5NWUyZmQ0NzQ1MzdhMjIyNTJkN2YwYWFmNDRlL3RhYmxlcmFuZ2U6ZmY2OTk1ZTJmZDQ3NDUzN2EyMjI1MmQ3ZjBhYWY0NGVfNS03LTEtMS0xNjYzNA_beed2846-3ed4-49dd-aac1-4968f0510b01"
      unitRef="number">0</us-gaap:DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets>
    <us-gaap:DefinedBenefitPlanHealthCareCostTrendRateAssumedNextFiscalYear
      contextRef="i4719bbbd92cd4903bbc76ef43bb13778_I20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMTc3OA_ddd4b76e-8727-4b81-9c52-f6d6c2729709"
      unitRef="number">0.0705</us-gaap:DefinedBenefitPlanHealthCareCostTrendRateAssumedNextFiscalYear>
    <us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1
      contextRef="i4719bbbd92cd4903bbc76ef43bb13778_I20211031"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMTg1MQ_8450eba3-e67c-4ab5-b95f-43d549300394"
      unitRef="number">0.0450</us-gaap:DefinedBenefitPlanUltimateHealthCareCostTrendRate1>
    <us-gaap:DefinedBenefitPlanYearHealthCareCostTrendRateReachesUltimateTrendRate
      contextRef="ic4370fb0f9a84e45a30a90a8898bc92a_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83MC9mcmFnOmRhZjQxYjhhOWMyMDQ1YTBhNjk5M2QzYzg2MWFkMGIwL3RleHRyZWdpb246ZGFmNDFiOGE5YzIwNDVhMGE2OTkzZDNjODYxYWQwYjBfMTg2OQ_90aae1b2-204a-4726-8552-4ce17564b29f">2038</us-gaap:DefinedBenefitPlanYearHealthCareCostTrendRateReachesUltimateTrendRate>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RleHRyZWdpb246MTliNjBmYThmOTIwNGJmYTg4YjgwYjU2NjlhMzRhYTJfMjI2Mw_39f83a88-2f3f-43e5-a3dd-1a30c7dfab26">OPERATING SEGMENTS&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have two operating segments:&#160;(1) Business to Business Products Group and (2) Retail and Wholesale Products Group.&#160;These operating segments are managed separately and each segment's major customers have different characteristics.&#160;The Retail and Wholesale Products Group customers include: mass merchandisers; wholesale clubs; drugstore chains; pet specialty retail outlets; dollar stores; retail grocery stores; e-commerce retailers; distributors of industrial cleanup and automotive products; environmental service companies; and sports field product users. The Business to Business Products Group customers include: processors and refiners of edible oils, petroleum-based oils and biodiesel fuel; manufacturers of animal feed and agricultural chemicals; distributors of animal health and nutrition products; and marketers of consumer products. Our operating segments are also our reportable segments.&#160;The accounting policies of the segments are the same as those described in Note 1 of the Notes to the Consolidated Financial Statements included in our Annual Report on Form 10-K for the fiscal year ended July&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales for our principal products by segment are 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:84.064%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:40.813%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.365%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.191%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.365%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.293%"/&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="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Business to Business Products Group&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Retail and Wholesale Products Group&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 31,&lt;/span&gt;&lt;/td&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;Product&lt;/span&gt;&lt;/td&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:10pt;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:10pt;font-weight:700;line-height:100%"&gt;2020&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:10pt;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:10pt;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;Cat Litter&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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,636&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;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;3,876&#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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;43,895&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;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;40,794&#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;Industrial and Sports&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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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:700;line-height:100%"&gt;9,120&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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,262&#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;Agricultural and Horticultural&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:700;line-height:100%"&gt;6,208&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;6,987&#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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;Bleaching Clay and Fluids Purification&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:700;line-height:100%"&gt;14,505&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;12,641&#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:700;line-height:100%"&gt;516&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;519&#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;Animal Health and Nutrition&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:700;line-height:100%"&gt;3,580&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;4,018&#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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;Net Sales&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:700;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:700;line-height:100%"&gt;28,929&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;27,522&#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:700;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:700;line-height:100%"&gt;53,531&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;48,575&#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 style="height:6pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;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;/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;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We do not rely on any segment asset allocations and we do not consider them meaningful because of the shared nature of our production facilities; however, we have estimated the segment asset allocations below for those assets for which we can reasonably determine.&#160;The unallocated asset category is the remainder of our total assets.&#160;The asset allocation is estimated and is not a measure used by our chief operating decision maker about allocating resources to the operating segments or in assessing their performance.&#160;&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.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.489%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.262%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding: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="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:700;line-height:100%"&gt;October 31, 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-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:10pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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;Business to Business Products Group&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:700;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:700;line-height:100%"&gt;69,057&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;69,023&#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="12" 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;Retail and Wholesale Products Group&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:700;line-height:100%"&gt;109,052&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;103,268&#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="12" 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;Unallocated Assets&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:700;line-height:100%"&gt;45,779&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;55,275&#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="12" 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;Total Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;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:700;line-height:100%"&gt;223,888&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;227,566&#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="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales and operating income for each segment are provided below. The corporate expenses line includes certain unallocated expenses, including primarily salaries, wages and benefits, purchased services, rent, utilities and depreciation and amortization associated with corporate functions such as research and development, information systems, finance, legal, human resources and customer service.&#160;Corporate expenses also include the estimated annual incentive plan bonus accrual. In addition, Income from our Business to Business and Retail and Wholesale Products as well as Corporate Expenses for the three months ended October 31, 2020 were adjusted for an immaterial correction of an error. See Note 1 of the Notes to the unaudited Condensed Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.223%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.123%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.223%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.123%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.223%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.123%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.227%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net Sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Income&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:10pt;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-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:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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: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-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:10pt;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="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Business to Business Products Group&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:700;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:700;line-height:100%"&gt;28,929&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;27,522&#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:700;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:700;line-height:100%"&gt;6,746&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;7,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/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;Retail and Wholesale Products Group&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:700;line-height:100%"&gt;53,531&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;48,575&#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:700;line-height:100%"&gt;74&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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,550&#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:700;line-height:100%"&gt;Net Sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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:700;line-height:100%"&gt;82,460&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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:1pt solid #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:1pt solid #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,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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 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="12" 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;Corporate Expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(6,375)&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,973)&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="12" 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;Income from Operations&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:700;line-height:100%"&gt;445&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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,177&#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="12" 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 Other Income (Expense), Net&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:700;line-height:100%"&gt;265&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;(422)&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="12" 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;Income before Income Taxes&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:700;line-height:100%"&gt;710&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;4,755&#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="12" 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;Income Tax Expense&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:700;line-height:100%"&gt;(115)&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;(806)&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="12" 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;Net Income&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:700;line-height:100%"&gt;595&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;3,949&#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="12" 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;Net Income (Loss) Attributable to Noncontrolling Interest&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;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:700;line-height:100%"&gt;10&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;(35)&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="12" 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;Net Income Attributable to Oil-Dri&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-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:700;line-height:100%"&gt;585&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;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;3,984&#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 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="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;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="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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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;/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;/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;/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;/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;/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;/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;/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;/tr&gt;&lt;/table&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RleHRyZWdpb246MTliNjBmYThmOTIwNGJmYTg4YjgwYjU2NjlhMzRhYTJfMjI0Ng_05699d8e-1985-41f5-ac71-d91a07145a5a">We have two operating segments:&#160;(1) Business to Business Products Group and (2) Retail and Wholesale Products Group.&#160;These operating segments are managed separately and each segment's major customers have different characteristics.&#160;The Retail and Wholesale Products Group customers include: mass merchandisers; wholesale clubs; drugstore chains; pet specialty retail outlets; dollar stores; retail grocery stores; e-commerce retailers; distributors of industrial cleanup and automotive products; environmental service companies; and sports field product users. The Business to Business Products Group customers include: processors and refiners of edible oils, petroleum-based oils and biodiesel fuel; manufacturers of animal feed and agricultural chemicals; distributors of animal health and nutrition products; and marketers of consumer products. Our operating segments are also our reportable segments.&#160;The accounting policies of the segments are the same as those described in Note 1 of the Notes to the Consolidated Financial Statements included in our Annual Report on Form 10-K for the fiscal year ended July&#160;31, 2021.</us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RleHRyZWdpb246MTliNjBmYThmOTIwNGJmYTg4YjgwYjU2NjlhMzRhYTJfMzc_f2a7b374-fd9e-4cec-b2a9-ab2971b222e3"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RleHRyZWdpb246MTliNjBmYThmOTIwNGJmYTg4YjgwYjU2NjlhMzRhYTJfMjI1MQ_d23a9469-d97e-4264-9a9b-9b4a2ca3b38d">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales for our principal products by segment are 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:84.064%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:40.813%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.365%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.191%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.365%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.293%"/&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="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Business to Business Products Group&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Retail and Wholesale Products Group&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 31,&lt;/span&gt;&lt;/td&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;Product&lt;/span&gt;&lt;/td&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:10pt;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:10pt;font-weight:700;line-height:100%"&gt;2020&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:10pt;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:10pt;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;Cat Litter&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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,636&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;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;3,876&#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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;43,895&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;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;40,794&#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;Industrial and Sports&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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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:700;line-height:100%"&gt;9,120&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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,262&#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;Agricultural and Horticultural&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:700;line-height:100%"&gt;6,208&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;6,987&#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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;Bleaching Clay and Fluids Purification&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:700;line-height:100%"&gt;14,505&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;12,641&#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:700;line-height:100%"&gt;516&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;519&#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;Animal Health and Nutrition&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:700;line-height:100%"&gt;3,580&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;4,018&#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:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;Net Sales&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:700;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:700;line-height:100%"&gt;28,929&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;27,522&#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:700;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:700;line-height:100%"&gt;53,531&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;48,575&#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 style="height:6pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;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;/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;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if6e8508264ce4d1f82a4b03a74ca4e31_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfMy0xLTEtMS0xNjYzNA_393e13bd-2563-4db8-835c-31bb47f4788c"
      unitRef="usd">4636000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id2674312275141f18153cbc7c811a6d8_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfMy0zLTEtMS0xNjYzNA_f77acd8b-7663-4266-b359-9ced8d37bcd2"
      unitRef="usd">3876000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6dd3068b8f9a457dbe683593f30b85ec_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfMy01LTEtMS0xNjYzNA_0506c1ee-ca10-48a5-b9c3-a2859eb1d34f"
      unitRef="usd">43895000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic22bad6f44e845968fc25dca27e31fef_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfMy03LTEtMS0xNjYzNA_9eab038d-bc91-445f-ad94-10c111c4ee64"
      unitRef="usd">40794000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i522829360394459789d93aa915cd0273_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNC0xLTEtMS0xNjYzNA_e3ca37c2-f81b-47a1-9121-9f33a30d7d22"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3fb9016bbab14d6a87a2060cbd5764ca_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNC0zLTEtMS0xNjYzNA_942895bb-5371-42bf-bdd4-145c69a1c3e3"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0948f788e411442aa3128b298d67117b_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNC01LTEtMS0xNjYzNA_812eaa06-95ec-4350-81f3-346a80ffc858"
      unitRef="usd">9120000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaca382adfcd647228c981bf349c1be93_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNC03LTEtMS0xNjYzNA_c51fe07b-8c70-43eb-b1e8-98116fe68eec"
      unitRef="usd">7262000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie0a8a08a925c496b810541f5ec896c69_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNS0xLTEtMS0xNjYzNA_fcb70f62-c559-4de1-972f-3ea6ba76be8d"
      unitRef="usd">6208000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia90c8dbd6ff346ffb7623cecde48d50f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNS0zLTEtMS0xNjYzNA_5870ad49-aeb7-40a4-8555-5c37a6f80ba1"
      unitRef="usd">6987000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8edfd56b2b504bb281cc6372f2900f44_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNS01LTEtMS0xNjYzNA_200aa464-2a25-481e-a131-44f7903dee8d"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i53b1c834c1e542439cb356f8360fde82_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNS03LTEtMS0xNjYzNA_ca904472-4c41-4c1f-9d4b-b9086b1464a7"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia0e600a20e21433cbc56291008d53143_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNi0xLTEtMS0xNjYzNA_3bacf16d-0412-4b9c-a953-89c62879ac02"
      unitRef="usd">14505000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0208ea62315348b2a5dfc3f1330d5c1a_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNi0zLTEtMS0xNjYzNA_3ea62c76-40b4-4e48-bd01-5e4e35844f7f"
      unitRef="usd">12641000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibfd3de040df9405ba52d61f8f6133a04_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNi01LTEtMS0xNjYzNA_2cb22168-a6af-417e-a4f2-036f6c08db08"
      unitRef="usd">516000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ief40aa0cbb60457f97cb1a6de354915f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNi03LTEtMS0xNjYzNA_a7c416d7-28ad-49de-b7cc-7d602c92dcb2"
      unitRef="usd">519000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e3a8fe681a44e93bb807a96b94cdc11_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNy0xLTEtMS0xNjYzNA_3efcb7d9-a081-48cc-9e00-f62fe646db99"
      unitRef="usd">3580000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7950a48f81014570821035508253998b_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNy0zLTEtMS0xNjYzNA_df516db0-a2d8-4734-bcf1-a6dfa1606260"
      unitRef="usd">4018000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iee76ca3b56894d6f883b22cf9f041976_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNy01LTEtMS0xNjYzNA_305372be-2557-4027-84f5-74ef49356819"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i791f1e0aa6d54f73b48e5d0042daa45f_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfNy03LTEtMS0xNjYzNA_6f7c129d-76c6-4ff7-89af-0382ce44e6b4"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i21e3843746df427fa0e50f89ed7a3a8b_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfOC0xLTEtMS0xNjYzNA_91d4a3a2-cc38-43ab-9271-68c38ddbe15c"
      unitRef="usd">28929000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9eee953ede8b4d09b6ec4480902ec027_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfOC0zLTEtMS0xNjYzNA_351b4d3a-1727-435d-83c2-92acb9e3cbe9"
      unitRef="usd">27522000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i35fdc199219149ed8ef95803a96d3452_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfOC01LTEtMS0xNjYzNA_cd76aaa8-80a7-4f8e-924b-12c887626372"
      unitRef="usd">53531000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idf9e6e7486644eab821573d02fdc16ba_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOmFjYzMxYjMzMGFiNzRiYzM4OTg4NGI2Y2U1Zjk4NjE0L3RhYmxlcmFuZ2U6YWNjMzFiMzMwYWI3NGJjMzg5ODg0YjZjZTVmOTg2MTRfOC03LTEtMS0xNjYzNA_91185e2d-ce2e-4331-b3d8-da0a2057e9f4"
      unitRef="usd">48575000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RleHRyZWdpb246MTliNjBmYThmOTIwNGJmYTg4YjgwYjU2NjlhMzRhYTJfMjI2OA_5948d1cd-4215-4bd8-ab83-035cc49e45df">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We do not rely on any segment asset allocations and we do not consider them meaningful because of the shared nature of our production facilities; however, we have estimated the segment asset allocations below for those assets for which we can reasonably determine.&#160;The unallocated asset category is the remainder of our total assets.&#160;The asset allocation is estimated and is not a measure used by our chief operating decision maker about allocating resources to the operating segments or in assessing their performance.&#160;&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.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.489%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.256%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.262%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding: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="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:700;line-height:100%"&gt;October 31, 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-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:10pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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;Business to Business Products Group&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:700;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:700;line-height:100%"&gt;69,057&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;69,023&#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="12" 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;Retail and Wholesale Products Group&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:700;line-height:100%"&gt;109,052&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;103,268&#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="12" 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;Unallocated Assets&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:700;line-height:100%"&gt;45,779&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;55,275&#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="12" 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;Total Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;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:700;line-height:100%"&gt;223,888&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;227,566&#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="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales and operating income for each segment are provided below. The corporate expenses line includes certain unallocated expenses, including primarily salaries, wages and benefits, purchased services, rent, utilities and depreciation and amortization associated with corporate functions such as research and development, information systems, finance, legal, human resources and customer service.&#160;Corporate expenses also include the estimated annual incentive plan bonus accrual. In addition, Income from our Business to Business and Retail and Wholesale Products as well as Corporate Expenses for the three months ended October 31, 2020 were adjusted for an immaterial correction of an error. See Note 1 of the Notes to the unaudited Condensed Consolidated Financial Statements.&lt;/span&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.223%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.123%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.223%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.123%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.223%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.123%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.227%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;For the Three Months Ended October 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:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net Sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Income&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&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:10pt;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-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:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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: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-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:10pt;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="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Business to Business Products Group&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:700;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:700;line-height:100%"&gt;28,929&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;27,522&#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:700;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:700;line-height:100%"&gt;6,746&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;7,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/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;Retail and Wholesale Products Group&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:700;line-height:100%"&gt;53,531&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;48,575&#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:700;line-height:100%"&gt;74&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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,550&#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:700;line-height:100%"&gt;Net Sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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:700;line-height:100%"&gt;82,460&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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:1pt solid #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:1pt solid #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,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:1pt solid #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 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="12" 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;Corporate Expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(6,375)&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,973)&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="12" 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;Income from Operations&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:700;line-height:100%"&gt;445&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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,177&#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="12" 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 Other Income (Expense), Net&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:700;line-height:100%"&gt;265&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;(422)&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="12" 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;Income before Income Taxes&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:700;line-height:100%"&gt;710&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;4,755&#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="12" 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;Income Tax Expense&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:700;line-height:100%"&gt;(115)&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;(806)&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="12" 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;Net Income&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:700;line-height:100%"&gt;595&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align: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;3,949&#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="12" 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;Net Income (Loss) Attributable to Noncontrolling Interest&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;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:700;line-height:100%"&gt;10&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#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;(35)&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="12" 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;Net Income Attributable to Oil-Dri&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-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:700;line-height:100%"&gt;585&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;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;3,984&#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 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="border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:3pt double #000000;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="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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;/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;/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;/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;/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;/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;/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;/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;/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;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:Assets
      contextRef="i783b311d4b734242bba704ea68ef8037_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfMy01LTEtMS0xNjYzNA_0452e49c-6b70-481f-a80b-86f00d82dc95"
      unitRef="usd">69057000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i6ab077db00b64aeb9326f70882fd6e20_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfMy03LTEtMS0xNjYzNA_ffd17956-ce3b-4819-9ead-d115753da49b"
      unitRef="usd">69023000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iafe9849677d5489ebcdd72039122c9c5_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfNC01LTEtMS0xNjYzNA_52031be4-b9ba-4514-8609-b7b46b644545"
      unitRef="usd">109052000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id04d1febf4f64d44bd46f892201303b1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfNC03LTEtMS0xNjYzNA_b2cc073e-d61b-4f8b-91b4-48fff043a3ca"
      unitRef="usd">103268000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i88e90fb9507447ff804b43a60a321594_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfNS01LTEtMS0xNjYzNA_e65998e6-08f7-406f-a19a-2d4d7fe0fa65"
      unitRef="usd">45779000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i6b21417227ed4880a4fa4898359dec93_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfNS03LTEtMS0xNjYzNA_45999e55-cb8f-4459-a254-176c831c386e"
      unitRef="usd">55275000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfNi01LTEtMS0xNjYzNA_7756c92d-a358-4ec3-9006-3b905d4c76a5"
      unitRef="usd">223888000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjE4ODQ2ZmM0ZDU4MTQ1NjNhNDlhOTljMTk0MzM1NzYzL3RhYmxlcmFuZ2U6MTg4NDZmYzRkNTgxNDU2M2E0OWE5OWMxOTQzMzU3NjNfNi03LTEtMS0xNjYzNA_2a45eee7-251c-47a0-98df-bfa8914cf9ab"
      unitRef="usd">227566000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i21e3843746df427fa0e50f89ed7a3a8b_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNC0xLTEtMS0xNjYzNA_fbe54acc-d7ce-497b-9046-72e091eb0879"
      unitRef="usd">28929000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9eee953ede8b4d09b6ec4480902ec027_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNC0zLTEtMS0xNjYzNA_8f7fd765-ebd1-4c32-baa3-e6d84edd9103"
      unitRef="usd">27522000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="i21e3843746df427fa0e50f89ed7a3a8b_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNC01LTEtMS0xNjYzNA_a56e1e79-25e7-48ba-90e2-10df1b4437c7"
      unitRef="usd">6746000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="i9eee953ede8b4d09b6ec4480902ec027_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNC03LTEtMS0xNjYzNA_1fae37a0-7809-467d-9223-d04e7c7d7f31"
      unitRef="usd">7600000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i35fdc199219149ed8ef95803a96d3452_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNS0xLTEtMS0xNjYzNA_07813c38-8823-4aa3-a751-3a8c22471876"
      unitRef="usd">53531000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idf9e6e7486644eab821573d02fdc16ba_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNS0zLTEtMS0xNjYzNA_2fdc3ae1-f5ae-4105-854c-1b05b6557116"
      unitRef="usd">48575000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="i35fdc199219149ed8ef95803a96d3452_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNS01LTEtMS0xNjYzNA_cd444ae0-425b-480a-8b6a-dc05ce40b19f"
      unitRef="usd">74000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <odc:SegmentReportingInformationOperatingIncomeForReportableSegment
      contextRef="idf9e6e7486644eab821573d02fdc16ba_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNS03LTEtMS0xNjYzNA_e8360985-fd9a-4efb-b13c-95826f916bbe"
      unitRef="usd">3550000</odc:SegmentReportingInformationOperatingIncomeForReportableSegment>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNi0xLTEtMS0xNjYzNA_7524554b-a4b5-4279-af5f-eb6c7fc8bd51"
      unitRef="usd">82460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNi0zLTEtMS0xNjYzNA_9ca851fc-76cf-46fb-bf28-56e329426ba1"
      unitRef="usd">76097000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <odc:CorporateExpenses
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNy01LTEtMS0xNjYzNA_7c5c3248-7263-4214-a96f-e5941bad52a8"
      unitRef="usd">6375000</odc:CorporateExpenses>
    <odc:CorporateExpenses
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfNy03LTEtMS0xNjYzNA_48594076-0b12-4ef0-bd2c-2ef19f74bc97"
      unitRef="usd">5973000</odc:CorporateExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfOC01LTEtMS0xNjYzNA_fb6e26e1-69b2-4c63-908f-7fccd59a0723"
      unitRef="usd">445000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfOC03LTEtMS0xNjYzNA_07d556f7-fbc9-46d7-9150-aab2a03049a2"
      unitRef="usd">5177000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfOS01LTEtMS0xNjYzNA_51384639-9e53-413e-958c-0e025f1d9d5f"
      unitRef="usd">265000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfOS03LTEtMS0xNjYzNA_75cf182b-63de-443b-8f53-07842cdf0503"
      unitRef="usd">-422000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTAtNS0xLTEtMTY2MzQ_ab47586f-587f-4275-9dc3-7c6db5f2d81e"
      unitRef="usd">710000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTAtNy0xLTEtMTY2MzQ_c0b585ad-3ee2-45f4-b70c-d78f5391fab4"
      unitRef="usd">4755000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTEtNS0xLTEtMTY2MzQ_aaa20dd3-921e-4561-8bd6-c0ddcc9d7a4c"
      unitRef="usd">115000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTEtNy0xLTEtMTY2MzQ_055bbc60-2452-4e7a-b009-308cc063af66"
      unitRef="usd">806000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTItNS0xLTEtMTY2MzQ_458f04c7-f23e-4873-b42d-13fcebf5f361"
      unitRef="usd">595000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTItNy0xLTEtMTY2MzQ_a1f2e194-9bda-4831-9d00-10a0a8c867b1"
      unitRef="usd">3949000</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTMtNS0xLTEtMTY2MzQ_1ee2f473-138d-437a-b5ec-c53818ab709f"
      unitRef="usd">10000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTMtNy0xLTEtMTY2MzQ_5bbb2b7e-1273-40ff-bd2d-5dd5a079480b"
      unitRef="usd">-35000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTQtNS0xLTEtMTY2MzQ_5d874a4a-f203-471f-b87c-75fa4e1d6e54"
      unitRef="usd">585000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i8341c65f6a944f6d9db5db8b9c58e5bc_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83Ni9mcmFnOjE5YjYwZmE4ZjkyMDRiZmE4OGI4MGI1NjY5YTM0YWEyL3RhYmxlOjI2NDNkOTY5NTk1NDQ5NjhiZDgwNDVkNmNjYzg5ZjVhL3RhYmxlcmFuZ2U6MjY0M2Q5Njk1OTU0NDk2OGJkODA0NWQ2Y2NjODlmNWFfMTQtNy0xLTEtMTY2MzQ_a73cfc8c-61d3-47a4-945a-040ddd35e529"
      unitRef="usd">3984000</us-gaap:NetIncomeLoss>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfMTMwNA_3042ba20-9b3c-4700-84d8-9e04e4bfc5ff">STOCK-BASED COMPENSATION&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Oil-Dri Corporation of America 2006 Long Term Incentive Plan, as amended (the &#x201c;2006 Plan&#x201d;), permits the grant of stock options, stock appreciation rights, restricted stock, restricted stock units, performance awards and other stock-based and cash-based awards.&#160;Our employees and outside directors are eligible to receive grants under the 2006 Plan.&#160;The total number of shares of stock subject to grants under the 2006 Plan may not exceed 1,219,500. As of October&#160;31, 2021, there were 305,855 shares available for future grants under this plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Restricted Stock&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All of our non-vested restricted stock as of October&#160;31, 2021 was issued under the 2006 Plan with vesting periods generally between one and five years. We determined the fair value of restricted stock as of the grant date.&#160;We recognize the related compensation expense over the period from the date of grant to the date the shares vest.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were 75,000 and 33,000 restricted shares of Common Stock granted during the first quarter of fiscal years 2022 and 2021, respectively. Stock-based compensation expense was $636,000 and $784,000 for the first quarter of fiscal years 2022 and 2021, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of restricted stock transactions is shown below:&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:97.368%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.323%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.563%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.064%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restricted Shares&lt;br/&gt;(in thousands)&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;Weighted Average Grant Date Fair Value&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 restricted stock outstanding at July 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;370&#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;33.96&#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;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;75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td 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;34.79&#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;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;(42)&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;35.72&#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;Forfeitures&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;(14)&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;35.21&#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 restricted stock outstanding at October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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;389&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;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;33.88&#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:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="if3cfdf93882c49719fa678b473365c4c_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfNDc3_4decb667-d0dc-4036-a2a0-bf04d37ee6d2"
      unitRef="shares">1219500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="if3cfdf93882c49719fa678b473365c4c_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfNTAy_e402065b-fac5-4683-98aa-e02e2cb58cf4"
      unitRef="shares">305855</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <odc:Sharebasedcompensationarrangementbysharebasedpaymentawardvestingperiodminimum
      contextRef="i68a11da7cd8f4d7b9ed5950ea1a14e19_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfNjk0_9b3045ef-2fc7-4d62-a646-a5cee226a468">one</odc:Sharebasedcompensationarrangementbysharebasedpaymentawardvestingperiodminimum>
    <odc:Sharebasedcompensationarrangementbysharebasedpaymentawardvestingperiodmaximum
      contextRef="i68a11da7cd8f4d7b9ed5950ea1a14e19_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfNzAx_133b7baa-a187-4074-8f90-31d1697c5dad">five years</odc:Sharebasedcompensationarrangementbysharebasedpaymentawardvestingperiodmaximum>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i93f67bd91b594657a14607569d13e87b_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfOTAy_b8c00c28-dae8-49a4-a96c-9f685e493e92"
      unitRef="shares">75000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i8ddcec37ac424e9d98526b9496db77da_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfOTA5_10b8e294-a432-4b35-a925-cfa044dbee3a"
      unitRef="shares">33000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i68a11da7cd8f4d7b9ed5950ea1a14e19_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfMTA1NA_23a9c718-318d-4f57-9c83-2aa73ade5cdf"
      unitRef="usd">636000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i7ef28261043945deb7ff9da47389deb1_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfMTA2MQ_d409bac6-6547-489d-92c7-386c97c5b820"
      unitRef="usd">784000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RleHRyZWdpb246ZmMzOGY1ZmVkZDdlNDg3OTk0Mzk4NzY5MTczZjg5MjRfMTMwMA_2c3d4901-444d-45b7-b0d5-7c431e198951">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of restricted stock transactions is shown below:&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:97.368%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.323%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.563%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.064%"/&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:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restricted Shares&lt;br/&gt;(in thousands)&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;Weighted Average Grant Date Fair Value&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 restricted stock outstanding at July 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;370&#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;33.96&#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;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;75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td 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;34.79&#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;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;(42)&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;35.72&#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;Forfeitures&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;(14)&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;35.21&#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 restricted stock outstanding at October 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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;389&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;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;33.88&#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:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ia8263fbdf8154196af33ebe4d45f5d24_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfMS0xLTEtMS0xNjYzNA_50a2bc2c-5073-451b-94ec-18b4cd852d7a"
      unitRef="shares">370000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ia8263fbdf8154196af33ebe4d45f5d24_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfMS0zLTEtMS0xNjYzNA_2c83ee40-034c-446e-8d2a-8ddd00e6982b"
      unitRef="usdPerShare">33.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfMi0xLTEtMS0xNjYzNA_17585e65-3f16-4a59-a037-7a46be01046a"
      unitRef="shares">75000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfMi0zLTEtMS0xNjYzNA_b83269ef-197a-4d95-8160-e48f29b1e98e"
      unitRef="usdPerShare">34.79</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfMy0xLTEtMS0xNjYzNA_32958934-8292-40c2-8bb8-b1a52e502973"
      unitRef="shares">42000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfMy0zLTEtMS0xNjYzNA_19c481b5-cdf6-4981-9e83-cb5453ed51f5"
      unitRef="usdPerShare">35.72</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfNC0xLTEtMS0xNjYzNA_9e8b8440-beff-4d6e-ab95-ff79e8db50cc"
      unitRef="shares">14000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="if72ba510882a404cab3d16453be3f3ea_D20210801-20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfNC0zLTEtMS0xNjYzNA_6c1ebcbf-806b-4599-8af9-6758f78a1eff"
      unitRef="usdPerShare">35.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i809774ca92034e1595aefeadc14bb6bc_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfNS0xLTEtMS0xNjYzNA_c555662b-bc51-4c4f-ab8e-80d2662c30ed"
      unitRef="shares">389000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i809774ca92034e1595aefeadc14bb6bc_I20211031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl83OS9mcmFnOmZjMzhmNWZlZGQ3ZTQ4Nzk5NDM5ODc2OTE3M2Y4OTI0L3RhYmxlOmEzM2E4ODE0ZjllNjRhZTY5OTRiMDRmNWYzMjM2MDc2L3RhYmxlcmFuZ2U6YTMzYTg4MTRmOWU2NGFlNjk5NGIwNGY1ZjMyMzYwNzZfNS0zLTEtMS0xNjYzNA_8be02dc3-5b81-41fd-a5cf-ee9098608c61"
      unitRef="usdPerShare">33.88</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ComprehensiveIncomeNoteTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RleHRyZWdpb246ODBkZjM5N2EyZjczNDk0MTk2Mzg5ZTcwMjczZTUzMzlfNDYx_eece49c8-3aec-4934-978a-212ed2ffb87d">ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the changes in accumulated other comprehensive (loss) income by component as of October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.918%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.802%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.102%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.081%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.102%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.413%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.800%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pension and Postretirement Health Benefits&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;Cumulative Translation Adjustment&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;Total Accumulated Other Comprehensive (Loss) Income&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;Balance as of July 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;(4,428)&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;311&#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;(4,117)&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;Other comprehensive income before reclassifications, net of tax&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)&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)&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;Amounts reclassified from accumulated other comprehensive income, net of tax&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;27&#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:2px 1pt;text-align:left;vertical-align: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)&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;27&#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;Net current-period other comprehensive income, net of tax&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;27&#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 #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;(34)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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-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;(7)&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;Balance as of October 31, 2021&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;(4,401)&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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&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;277&#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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&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;(4,124)&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;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(a) Amount is net of tax expense of $8,550. Amount is included in the components of net periodic benefit cost for the pension and postretirement health plans. See Note 9 of the Notes to the unaudited Condensed Consolidated Financial Statements for further information.&lt;/span&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RleHRyZWdpb246ODBkZjM5N2EyZjczNDk0MTk2Mzg5ZTcwMjczZTUzMzlfNDY0_d71431d2-b58d-4928-8d06-11f9fcabbc08">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the changes in accumulated other comprehensive (loss) income by component as of October&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.918%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.802%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.102%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.081%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.102%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:2.413%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.800%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Pension and Postretirement Health Benefits&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;Cumulative Translation Adjustment&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;Total Accumulated Other Comprehensive (Loss) Income&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;Balance as of July 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;(4,428)&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;311&#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;(4,117)&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;Other comprehensive income before reclassifications, net of tax&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)&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)&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;Amounts reclassified from accumulated other comprehensive income, net of tax&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;27&#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:2px 1pt;text-align:left;vertical-align: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)&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;27&#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;Net current-period other comprehensive income, net of tax&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;27&#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 #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;(34)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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-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;(7)&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;Balance as of October 31, 2021&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;(4,401)&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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&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;277&#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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&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;(4,124)&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;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(a) Amount is net of tax expense of $8,550. Amount is included in the components of net periodic benefit cost for the pension and postretirement health plans. See Note 9 of the Notes to the unaudited Condensed Consolidated Financial Statements for further information.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="if58ec964e72740158aca614853de02f0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMS0xLTEtMS0xNjYzNA_15fccc57-bae5-4812-94be-2bf2d3052518"
      unitRef="usd">-4428000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i12a4ed92b7884296a8fd3c9237386167_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMS0zLTEtMS0xNjYzNA_5b56750c-116d-4791-80df-a40f4232702d"
      unitRef="usd">311000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="id52e272c542f462197f83d7cda56d421_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMS01LTEtMS0xNjYzNA_5b0adda2-67dd-447e-9a74-b019b9e87019"
      unitRef="usd">-4117000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="iae963d6c5aa0410eb85ff3ad7de318f2_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMi0xLTEtMS0xNjYzNA_8911fba1-fec4-427a-8b37-f1f86292f781"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i2bdd0ffb410749548a13ae3187bcc6b3_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMi0zLTEtMS0xNjYzNA_4b9525be-9d76-4917-83e0-d4ba522b71b1"
      unitRef="usd">-34000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMi01LTEtMS0xNjYzNA_73c41b71-91c0-46c5-b624-3104bee79481"
      unitRef="usd">-34000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="iae963d6c5aa0410eb85ff3ad7de318f2_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMy0xLTEtMS0xNjYzNA_54d914db-657e-4196-9867-ba70a38804b0"
      unitRef="usd">-27000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i2bdd0ffb410749548a13ae3187bcc6b3_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMy0zLTEtMS0xNjYzNA_2df1daa2-9e64-42c6-98c0-fd52ca61f204"
      unitRef="usd">0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfMy01LTEtMS0xNjYzNA_20c4a7e2-e25e-4d91-b8cd-3241dc39f4dd"
      unitRef="usd">-27000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="iae963d6c5aa0410eb85ff3ad7de318f2_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfNC0xLTEtMS0xNjYzNA_e68f1c33-902b-44e2-aeaf-430a8ee2f5ea"
      unitRef="usd">27000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i2bdd0ffb410749548a13ae3187bcc6b3_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfNC0zLTEtMS0xNjYzNA_a7c54f2b-766a-4ff9-a869-989b9b49e534"
      unitRef="usd">-34000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfNC01LTEtMS0xNjYzNA_bc457653-db45-489c-88e7-8bb5c169dceb"
      unitRef="usd">-7000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i55135ead9f0a498ab5ca3d86dbdbe6ba_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfNS0xLTEtMS0xNjYzNA_de417877-931a-4814-b3e8-450efa0b20fe"
      unitRef="usd">-4401000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ie10bff22f89a4333babf90159aa3f74f_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfNS0zLTEtMS0xNjYzNA_fcb230d9-040f-4f16-807e-c0931b9b4739"
      unitRef="usd">277000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i2190287ea251424db6ef6461f8b629dd_I20211031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RhYmxlOjA1M2YwZmYzZjAzZDQzN2JiMjlhZDExZmE0MmNkNTZhL3RhYmxlcmFuZ2U6MDUzZjBmZjNmMDNkNDM3YmIyOWFkMTFmYTQyY2Q1NmFfNS01LTEtMS0xNjYzNA_b687941c-3be5-436b-a0a0-3af1f3791e7e"
      unitRef="usd">-4124000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84NS9mcmFnOjgwZGYzOTdhMmY3MzQ5NDE5NjM4OWU3MDI3M2U1MzM5L3RleHRyZWdpb246ODBkZjM5N2EyZjczNDk0MTk2Mzg5ZTcwMjczZTUzMzlfMjI3_5e8ab2be-5d95-48e3-bacf-8919f4cb7f70"
      unitRef="usd">8550</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="ieaeb0dd3ffc24365a1a4de3041a74b60_D20210801-20211031"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfMTEzNA_7b6adca3-c934-461d-ac4d-9185e506ee14">RELATED PARTY TRANSACTIONS&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;One member of our Board of Directors (the &#x201c;Board&#x201d;) retired from the role of President and Chief Executive Officer of a customer of ours in September 2019 and is currently party to a post-employment agreement with the customer. Total net sales to that customer, including sales to subsidiaries of that customer, were $75,000 and $110,000 for the first three months of fiscal years 2022 and 2021, respectively. Outstanding accounts receivable from that customer, and its subsidiaries, were $39,000 as of October 31, 2021 and $4,000 as of July 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;One member of our Board is currently the President and Chief Executive Officer of a vendor of ours. Total payments to this vendor for fees and cost reimbursements were $215,000 and $92,000 for the first three months of fiscal years 2022 and 2021, respectively. There were no outstanding accounts payable to that vendor as of October&#160;31, 2021 or July&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i82cdc67ab3724df8bcdb3b4e8e4629d5_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfNDQx_df17f260-a6c0-4c14-a49e-1d698e051e46"
      unitRef="usd">75000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ice6e9741efc441208d5585f9052a8673_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfNDQ4_f24158c5-e7e0-43e6-94e0-7a5ebef18fef"
      unitRef="usd">110000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i0ce230f4679a43538c4e34b15efe96ff_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfNjAx_22e7729d-1423-4ce2-a921-a591945042f4"
      unitRef="usd">39000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i3dfebdca8a654c999fd5f398d900d6dc_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfNjM0_ba4b5c60-796a-478c-8198-a1cd28fb67a5"
      unitRef="usd">4000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="i82cdc67ab3724df8bcdb3b4e8e4629d5_D20210801-20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfOTAx_d13d20cd-dd08-4896-ab5d-db0ef249a8d4"
      unitRef="usd">215000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="ice6e9741efc441208d5585f9052a8673_D20200801-20201031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfOTA4_72b7163e-f6ea-4479-a5d2-668a4092d6c2"
      unitRef="usd">92000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:AccountsPayableRelatedPartiesCurrent
      contextRef="i3dfebdca8a654c999fd5f398d900d6dc_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfMTA3MQ_873a1770-1884-431a-ad3c-8706b22d034a"
      unitRef="usd">0</us-gaap:AccountsPayableRelatedPartiesCurrent>
    <us-gaap:AccountsPayableRelatedPartiesCurrent
      contextRef="i0ce230f4679a43538c4e34b15efe96ff_I20211031"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjQxMmZkMTA1MTk4ZTQxZjU5ODdlOGZhOWY2N2M5MGIyL3NlYzo0MTJmZDEwNTE5OGU0MWY1OTg3ZThmYTlmNjdjOTBiMl84OC9mcmFnOjRhMGQ1MjQzMjdiNTRiMTM5MzQ2NzY2YmFmODY5OTg5L3RleHRyZWdpb246NGEwZDUyNDMyN2I1NGIxMzkzNDY3NjZiYWY4Njk5ODlfMTA3MQ_87f7513c-7f41-4b43-bbd1-bbb5b64e9edf"
      unitRef="usd">0</us-gaap:AccountsPayableRelatedPartiesCurrent>
</xbrl>
