<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:brc="http://www.bradyid.com/20210731"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="brc-20210731.xsd" xlink:type="simple"/>
    <context id="i6c8526398be24e368b53989654ad90b4_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i1eee4e5dcfc2488c91898ba53a027e2f_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="ie7636bb0bea840769aa4eb87e7616b5b_I20210831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-31</instant>
        </period>
    </context>
    <context id="i1881a9eabe844025b8d729110b1b92e7_I20210831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-31</instant>
        </period>
    </context>
    <context id="i900a9798e6d64452a424e3c10000c048_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i0498618e14e04074a5ec52c438eecb8d_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i716d6e4d829141858b211e76d96555e5_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i4f08013094aa40e3995bf4bb1f2b873d_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ie8b02ea92e9c472cbfa01b0b51c62560_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ide7a6a44a0214e618894e85630f55511_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i97e0001e0faa4690ac713d641e867522_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i68c2aedccfc849f98d5c628f1c9fb61a_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="idc12c2f6b006442fadc3054ba83bc5b2_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i77e1379c9d094da582a8fcb77839c2fe_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i75f0df2cf57648b3a88bbcfd867bbb20_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i018a2cce4d8540e68fc9b945b0215ab8_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i5e1dc197c81f499fb8d103574f8e7eee_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i0f10af2317014e449d44f0417b9d72bf_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i16e1bd27f2bb418e953bc4d68d0d2f35_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i8c08a0ca1b8a4dc0b71cfd4c0f44a70f_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i7064a2c6a8ea405788230ce37ce35bf1_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i32bf33d04ec64ce7914b597b09311c95_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="if19dea63a8af44d9bf5b7a118b83c322_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i8c4a11921f3f430bb95ef3d523e26513_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="ia57abb2eddff4cb8a14574c0b77b8bc8_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i73e93566a9fa4ab89d235d386ee97604_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i9a58fa1027b040bca4bec9966b971ab6_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i6d8a7595bfe140a4926d15872f1e0a00_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i9e5fd943563d46e1921bdc8fe016edcb_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i3df078a8bb4f4512b65b14c3de232c91_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="id43c9cb6e3b344378ed5df512f4d9074_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ifa6ea092de1542ff80f641bb13eb7a3e_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ib1bbdebad3214b2dba2ae5ce751a7f6b_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ifa78cc1a02764f15add8845797bd34e0_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="id1d245ab7e4549f7974cbe6a70ec5f8d_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="i21f00e4d69724103a47803b1fe1bb49f_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i5213a5ac1a8144feac6f214b06849eaf_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i42489dd6e8fd4b29acf2b9336aa7c5e1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i9180346702c94c2dab995a19df014b14_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i6ce0a46f78b1455ab9478776f8bdaf18_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ib9ecc8468233466fa4704c83af6ed037_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="if54602ebf28c48c1b6c1890b4864e5fa_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ib23986197fea4d98b341dc6399a32140_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i7f816344af4f48e8af4d5e9b6c6f5f9c_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="i29174ebb22e8416bbfeb7d3a8f58b84e_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="ic06172d4701a4ab7b9c2d3350639adef_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i0b44630cc9db4baf928d615d6a206098_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib09235637b7245c18fb83ff8ba5dce2f_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i8cac13e7320547b6ad1de6ddfb4674fe_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i700c3a0dc63149d28d295faf29f02702_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i95bde3217b6c48f9b8044b7b3d8a4616_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i99215707bd224846870f7789b8342016_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="iba972ab712814a66aaa831b7d1e67c97_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="id84b8a60ccfc4632b8fc4718336a9b5d_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i80924641c60441549e9a07b7f446ace9_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i4f131f162a9d4e75b00c4762519da8a4_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib20a45fb2bc548029c192b8add302c21_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib195d4841e9a400698be604f57ceca5f_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:CodeAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib7437006003c4301ba43d440bc1493de_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:MagicardAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib5d6dd6193bd4c309ab950e0557c3d2d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:NordicIDAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i8b33e6e25b4d437ab9612c66af670684_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i5f4f51fd0ac3418cb2aa0fadfba983aa_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia1f315b6f5444adabc77b5be92f989d8_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ic5f75ccdefef4d71866305bf426f95a1_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i4c15ea2d0cd74f9e8ce7f4d6e206922d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="iaac6b65990f44054a1a450d6fbc7d64d_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1fab405b410d487ba5cdcd1a5770804f_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="if8eea90582e340bd99aee3c1c64ae0ac_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i3ab201b1217a447da572b9f38381887e_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i3b1dd80807434f4a825bc165645fa49c_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ibb2e19906c0f49cfb5e02254110abb06_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ia803c143845e48088d5315166349e6f2_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="iac5b81ab6ef84ba89c9eb8a4a88c6391_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i6b7248bb2e1c43b48370dc464d77ccb1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i860e607bb6994bb9859608772d83ded7_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i084d7d8faeee4fc5bc760581a67d31e3_D20190801-20190801">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2019-08-01</endDate>
        </period>
    </context>
    <context id="i22f2981acef44cb8b8f648f1f73f02e9_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NoncumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i587f9e66b75943978803b6fa7c91d782_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NoncumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i87c0e88cbfa64ae09377c1ce0262cb34_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalUnitsByClassAxis">brc:CumulativePreferredStock6CumulativeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="iec6638581cfb422fa1756c5cc3d167ac_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalUnitsByClassAxis">brc:CumulativePreferredStock6CumulativeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i31e39eac75d04ec18ef9dabb46665dfd_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalUnitsByClassAxis">brc:A1972SeriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib85247f5da6d41d2b4d8150dac16e7dc_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalUnitsByClassAxis">brc:A1972SeriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i19d37ff3cf7d4ef2937732f1a6a40420_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalUnitsByClassAxis">brc:A1979SeriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib303ad46715e4ccbb1a1935b7a6efd08_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalUnitsByClassAxis">brc:A1979SeriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CumulativePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i5a04825c9f0a4f568164b247c8cc7ae1_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i52073fe4f99d4a7899beb5accd892148_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i0740ec63279541cfbe558a832042ecba_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i0ef7266f444c4af298b7491870a5324a_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="ia4c89ae4f44c4533a454bc2e4350aeeb_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i8ea0bbf9d6784dc19c5b6d7839a4c8c9_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ie3a9145bd07245e7a6928f9ec06579a4_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i06e63e40d0ac4688b3a6e3bb49a9ad3f_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i8dbc7a903c7746d884ed0ec30df7a1ed_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i820a23931f444521a8d05f7259d6414a_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i23d360917d2c403a840a1f471cefe274_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i21851c904da041babf3b1762042c399a_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ic2905d02956c4bc4b1e1274682829c18_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i35b6434abbac492a98260716d10a6b99_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="id8e74366f9944a4cbe5c4e6e58a71ee5_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:DeferredCompensationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i36e39acffa234cfa89f71d7f941fe580_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">brc:SharesHeldRabbiTrustAtCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i411b41d4e7e346d0974f90725501fd63_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i93dcbd23371e4b9899636f96a0a7b3fd_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ia9d4e18ac691418ca8b0b17bca8bfc55_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if70060186e7b47cdacdcb95235517d62_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="id3293defa9d44f39a2b6ba4b00e787f6_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="id0a6fd2abe094b0ab00ba917e8794647_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">brc:A19.9626.99Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ibdd75b7aa015407c8cca3617a12066d0_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">brc:A19.9626.99Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i3c58b5d6dfe942adbefd127a46acb868_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">brc:A27.0032.99Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i3752ceebd5e040eb8ac1c26d5fe8364a_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">brc:A27.0032.99Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="id87d477a1506407e98898833b6a14381_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">brc:A33.0043.98Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ie635f1b11c8b4daa8ec63424e6f25063_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">brc:A33.0043.98Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ibc566fbc52fc413280c21008b95f2d2e_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if6e19a236ea445f89763d6882cc52e68_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:ServiceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i434e0573b93443589753726ff58701d0_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:ServiceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i0db3e4f7abb549b1be27fd32f34fb01b_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:ServiceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ic3e63b0de1954c0182418f99b458edc1_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:ServiceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ica689889ad2e4b5cabd5fdb79098a450_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:PerformanceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i098f06058c5040979daaa970fa60f4b5_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:PerformanceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i6c369a696e9c4bc08956bdcddfdaf8b7_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:PerformanceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="id4a88eadf6ea406c8451e569dff29dc7_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:PerformanceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="id41ab0a5e30f4a87a7e10301928c9604_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">brc:PerformanceBasedRestrictedSharesandRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i8936e4db81e84aafa9398897ceda45ab_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i2c38e68ee56648f1a16ed68b94351b35_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentNetUnamortizedGainLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i8fd4de92e330471aae0b64c3a65fc8df_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i09b41baba69c4dd19791cd4fa11e6258_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i54ac1fda1ab2449fa1bf12e7dd6b6d47_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentNetUnamortizedGainLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ic9532b8087ca4fa0ae84a280565a1a3c_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4e0e148e24cf46ddb51d8784ced7a06a_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i6d8f50ebd9b74cb79864d7de8cd6e67e_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentNetUnamortizedGainLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i930d8660a4204395b9c95cff7234daff_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i26f8b07f1f764033b4134e05692ff0ac_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="id929781b55584412b6f4431b0b5bd851_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentNetUnamortizedGainLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i3f6eb2d5664444aa842e42306985af11_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i810c02ac14e2453192fce078e63e3fc4_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i88566957607e43bc94bc091efcdf8b85_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentNetUnamortizedGainLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i436f7e27145843c49802c37ee5fadab3_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</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="ic58f74ffb8294043a48b871adc922b8e_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i25635290191c4316a481656ae6f1bb48_I20230731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-07-31</instant>
        </period>
    </context>
    <context id="i1e3f6a2858a7418fb0174e10f9548662_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i93eb254e38304cc2bdb4e02f806bf03b_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ia6045ce128f141279e998e52227b7b6d_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="icfe58ed1c3034905a83786316ffda3eb_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="icd87998cb92946a18a84cbe591afcf0d_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i509c22de3c3a402193fbc6fc28ca996b_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i0f1e36e400924276ab3e2c5be81e19c3_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ibffa3d2097af4cae9425883ffbe9a525_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i11a70bdd363d45d4be5e4b885c57929a_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i0404f29cbb8f43e9bb191d147190e04c_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:IdentificationSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i13658cfe8454414f905c06b7196f7fa9_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib021962a8731442f8bdbb9a45b49ccbb_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i3b094d29650144b1b9bbf8c882ba37e9_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i78cf7fea1c60472d8553b86940644068_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i99ef6bfe348649b1ac159065fba2f781_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ifbfa553349d946e2ba9c8a7a7c442b6b_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="if366ad9a3b0c4ba5a4cded9d39a947c6_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i4042119656e04c56b8686e90bfa65d99_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ie194b77ec31542308b8cf55b45e49c5b_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i1d0f676f242a43809a5fa4788cbb14ee_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">brc:WorkplaceSafetyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ie582e0423d39453081ab18227cf3a8f3_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ifc2574c96b2e4e579e8e54687ec0967a_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i25e03077dab94a01a9d221d47218a05d_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i01c8a748921b407496f67adaac164aef_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i8785a0e9054041c99e6034f8ca881579_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i7431c38b15354cfdb4ad9a5384cbb7c1_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i9fddc4d5177b4fbcaa0bb4da5ec6c91d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if7d755ae36014c7e93b957576d0ded20_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i54ea4ae88d4948f8859ae42e485aee91_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ie9ce3c43e5704499bbc4280720c9b23b_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i13a12b95d139486eb1d5b3e78c6f3cb1_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i6c732af3b8414de6b1e820fa17a2a7dc_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="ie045b897ad1640f49b1a0e762e1ad537_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i29437d4212b74c64ac31b769d1893ae7_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i84746852e8ad436195fc831851765294_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i8fdfb74f46ab488d98c540c7978160ac_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia53f44945501448c967dec4880d7b59e_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ia67a6b78cc6748bba38ecbbea5779b68_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i0c76f513ede64950a67117702a067ee0_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">brc:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i52e39d443d594fa0a28faf7f2aa8c05f_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">brc:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="id2eeb8bce973453c87b67fd1c5769cd2_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">brc:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i2769872ad0984bf6b28912b8955a4ffc_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">brc:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia64838bb0b394abc8fac131ffe96b028_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">brc:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i960bdc2d2c514c6d82a284133eb5dd6e_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">brc:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i68cdea0d517b45ef86cc24c995068a95_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i90ae7142857b48e4a3fe46d2fb4ae263_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ieb6a13430d87400eb69f6401e4bdad9d_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i50249781d8a84142bdacd34520abd436_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i978261c322414eed964101db8dd0dd38_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i33ec8086fe494592b49577d84389b5d9_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">brc:NetofliabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i646bccb5d34342f8bd8508b070513d50_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">brc:NetofassetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib171ec0cbcfa4cce8d71296379af021d_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="brc:DTANetAxis">brc:NetofliabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i4616317ec0804d94b1bbf67d58d8b772_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="brc:DTANetAxis">brc:NetofassetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i567237db37ba4c9b8d6d04e0155b4526_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">brc:NetofassetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i23def7a6e35e4844af0d22d281aa1b61_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i29dabd703ec648578ca90a29275467eb_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i492b07c4842642b0873591e8ac7cfcc6_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:EarliestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if17ad21cc5cd48ad94c4a5dca59fa70e_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:LatestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i48f6721241974904b7621ace05427fa6_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">brc:PreferentialDividendsOnClassNonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i45b869a2962f4df982141a4edc374941_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">brc:PreferentialDividendsOnClassNonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ib8ca09660c194f79853b8e45809e650e_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">brc:PreferentialDividendsOnClassNonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ic61e35c3f83f47d58f9710566d3a067d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">brc:PreferentialDividendsOnDilutiveSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i97b410ab810e4c3882328bf868dfa6e0_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">brc:PreferentialDividendsOnDilutiveSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4f705ac6a9ea4f81ba94b005d35592e4_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">brc:PreferentialDividendsOnDilutiveSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i52db5cd3125a4040a2d267de0d98824f_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i91bd7e52168149daad0e1f0c64243d40_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i1adbae4698be4d0eb1b0daf4267f4940_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if03387fd9b9e49c3967ab9a5c9022235_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ie3be8e7fedcc4611ae739b8d415c0e12_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i13c19575d95b4e83acfb4c6ade39c353_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i43e844db772742ac80ba43d5a3294d99_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1a6917f08c3149d0a8842d858ddafc47_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ib87253f3eb474cbc8ae25828f46c19a4_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i15c09184fb6240ab9c8ea463d7bca8aa_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i17172882fe7a4504977da5473f1edda1_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i2e434574bcf24104a2d2334c419ff49f_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i47f99ba1080d4e24b5afd621199ee7e8_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ib4e9332b03a343f4804379809bbbe875_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib07228633e2c4b44800d691a5b1afd42_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia8dc0440ca7d4d649ccb7b09dd7e0722_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ic81b9b1a583943bcbcc19964902ad835_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i8c58309fb869407fa2a69ccbb50da433_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1ecefff189764e6aa7cdf20a17f817cd_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i5f1ccfe77bdc468c9d0e7a531780b667_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i5e459005b6584065a2931624e04c6d6d_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i3af50237bbe04bdf86432e1c8b222bd3_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ie299613f6aba46438c2cba7bd8712fd2_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i534d5740803e4731a612db5e8cdabd83_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ib268211430dc42efa18164fa2478218d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:MagicardAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i668829de80ea4c2096e12124f56d4cdf_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:MagicardAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i6b765d2588034841b14ae4a569585d45_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:MagicardAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ia49185af041b481eb5acebb928ef6afd_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:NordicIDAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i9c88ae3dcf2c40919ba929905846bfab_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:NordicIDAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i5136cff2b09e4cca83a5bbae798e13f8_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:CodeAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="id4f52015455d464c826da17d614617c1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:CodeAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i7a40deadf4454a27823a0e0178f42d94_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:CodeAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if2f69e43df6d4e04bf1893a0de33472a_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">brc:CodeAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ic4f73b73cd094694ac7578614de5a466_D20190801-20191031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2019-10-31</endDate>
        </period>
    </context>
    <context id="ibbab856dfba54037ba530f21c1149b1f_D20191101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2019-11-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="i0be020c50b3f4ba39fb55b8f19ad7ed6_D20200201-20200430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2020-04-30</endDate>
        </period>
    </context>
    <context id="i90e7b62bd71e43c3a4817d139f0f5d5b_D20200501-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2020-05-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4dc29ccfd9994d14804e5dfc6ea1c7d3_D20190801-20191031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2019-10-31</endDate>
        </period>
    </context>
    <context id="i83044ff10f464619b3104ed84014e03c_D20191101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-11-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="iaa5bbee9206549d5a50d1f77fffbeffb_D20200201-20200430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-01</startDate>
            <endDate>2020-04-30</endDate>
        </period>
    </context>
    <context id="i295bc144201d47dabdc3a25e297297ff_D20200501-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-05-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i04e3fdfb5e224ce094aab71e4ee8c7b8_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="i0a6c74c60e8449beba543c985c131f36_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="icd47d892bc2944a998c3258eca4d30cb_D20210201-20210430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2021-04-30</endDate>
        </period>
    </context>
    <context id="i6017aa27d63f4f43af0de8c1088b9a39_D20210501-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
        </entity>
        <period>
            <startDate>2021-05-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if6b4159c5efe4db295aa9b41dff9981d_D20200801-20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="iec2a2891702f49708a408d94fc0a5983_D20201101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-11-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i44cce58895144ac6a11ef3ab7cba2386_D20210201-20210430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2021-04-30</endDate>
        </period>
    </context>
    <context id="i19c9fdb1594d4ec3b2b8b1263c7e0c51_D20210501-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:NonvotingCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-05-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i6e8379a424d842319bbb12987845c98a_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ie8f51295d4b14fdb938e95546fc0f6d0_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ief90451ec12d400e9a5b93763bb2f204_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="ifd4836a4eade465c919b5459598ab9ae_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i68b3d373747f417fb27deb8a8055f391_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i0ecd59d4840743e1a2249260a1b5c46d_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ida4680c40de6403f90af1aa844b2657b_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i2783b63c005a40828c37ea7e1af83043_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:AllowanceForCreditLossMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia848dcb8bfb8409e854596f960edec08_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="i22595830e1e04baa90096ba94d4dad17_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i2c1ef8d0937a411596a571b60592a228_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i2550129d29994386ba0b74ef3c278536_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i78bb928542e44f8e8baf25b8f6ed7f89_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ib9af162b7e8248c49b76cbaca6b57f19_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="ifb5dbf1769fe4eb6b4af78ed689ce68f_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:InventoryValuationReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i4b81bd651ef64df8b5d5657d6c0c8acd_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="iffb6daad37d44ec093db04af45e2f3d0_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i4f0a8fe238db44ae825ccd9f623865a8_I20180731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-07-31</instant>
        </period>
    </context>
    <context id="i0f88ff4fb0ec443ea40ff17b8eef5ce0_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ibd1585f63c95441dad0dc6f71f30b65c_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i66804e23e9c74573a6b3f6081a78a7c8_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="id1092afa2d304c16bca7d2616aafdb7b_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000746598</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOfDeferredTaxAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</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="rate">
        <measure>utr:Rate</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl80L2ZyYWc6YThhYjJmMmM2OGQ5NDYxN2JkNjc3MDEzNDM5NDQ4M2MvdGFibGU6YmI1YTRlY2QyMTE3NDM3MjhjOTU0NzhkZWQ2NWY2YmEvdGFibGVyYW5nZTpiYjVhNGVjZDIxMTc0MzcyOGM5NTQ3OGRlZDY1ZjZiYV8zLTEtMS0xLTA_3996769e-4443-4522-96bd-3888d1d8df52">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl80L2ZyYWc6YThhYjJmMmM2OGQ5NDYxN2JkNjc3MDEzNDM5NDQ4M2MvdGFibGU6YmI1YTRlY2QyMTE3NDM3MjhjOTU0NzhkZWQ2NWY2YmEvdGFibGVyYW5nZTpiYjVhNGVjZDIxMTc0MzcyOGM5NTQ3OGRlZDY1ZjZiYV80LTEtMS0xLTA_05260bed-a9b5-4326-9dea-0ccb054ab8d4">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl80L2ZyYWc6YThhYjJmMmM2OGQ5NDYxN2JkNjc3MDEzNDM5NDQ4M2MvdGFibGU6YmI1YTRlY2QyMTE3NDM3MjhjOTU0NzhkZWQ2NWY2YmEvdGFibGVyYW5nZTpiYjVhNGVjZDIxMTc0MzcyOGM5NTQ3OGRlZDY1ZjZiYV81LTEtMS0xLTA_d6cd2767-3917-4d07-985b-4a768e5b0b3c">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl80L2ZyYWc6YThhYjJmMmM2OGQ5NDYxN2JkNjc3MDEzNDM5NDQ4M2MvdGFibGU6YmI1YTRlY2QyMTE3NDM3MjhjOTU0NzhkZWQ2NWY2YmEvdGFibGVyYW5nZTpiYjVhNGVjZDIxMTc0MzcyOGM5NTQ3OGRlZDY1ZjZiYV83LTEtMS0xLTA_fdf1f8e2-aded-437c-b4ae-70a9b9342dd2">0000746598</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl80L2ZyYWc6YThhYjJmMmM2OGQ5NDYxN2JkNjc3MDEzNDM5NDQ4M2MvdGFibGU6YmI1YTRlY2QyMTE3NDM3MjhjOTU0NzhkZWQ2NWY2YmEvdGFibGVyYW5nZTpiYjVhNGVjZDIxMTc0MzcyOGM5NTQ3OGRlZDY1ZjZiYV84LTEtMS0xLTI2Mw_8cad1fe2-f27f-4748-9cb9-6d5d1aea6fe1">--07-31</dei:CurrentFiscalYearEndDate>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfMy0xLTEtMS0yMjc_2467e4e6-9604-4bc5-913a-8fd7949416e7"
      unitRef="usd">7306000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfMy0yLTEtMS0yMzE_bafd79f7-3da8-4730-be96-46660608f3f4"
      unitRef="usd">7157000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:CommonStockSharesIssued
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfMy0xLTEtMS0w_8d8a98e8-5fcf-4f91-8cbd-079fd5a0e925"
      unitRef="shares">51261487</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfMy0yLTEtMS0w_ca822664-c18f-4af5-b2c1-d13c1757d3fb"
      unitRef="shares">51261487</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfOC0xLTEtMS0yNDY_13ad315e-eab4-4751-9fc4-cc67ee2e8459"
      unitRef="shares">48528245</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfOC0yLTEtMS0yNDg_547b371f-d6a2-4a23-aa64-0144d1c22c01"
      unitRef="shares">48456954</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:TreasuryStockShares
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfNS0xLTEtMS0w_dc3f0005-55a2-41dd-b8c2-514ec54cf00d"
      unitRef="shares">2733242</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfNS0yLTEtMS0w_380508c4-aad7-422c-b8ec-457b1a285770"
      unitRef="shares">2804533</us-gaap:TreasuryStockShares>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4f08013094aa40e3995bf4bb1f2b873d_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfNy0xLTEtMS0w_7d47a1d2-2ab7-42d9-a61b-f193787427bf"
      unitRef="shares">3538628</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="ie8b02ea92e9c472cbfa01b0b51c62560_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfNy0yLTEtMS0w_c3119de6-4d52-4f2a-97c9-e9f5468afc4a"
      unitRef="shares">3538628</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i4f08013094aa40e3995bf4bb1f2b873d_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfOC0xLTEtMS0w_f0262577-2583-40bc-8407-fe09da653060"
      unitRef="shares">3538628</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ie8b02ea92e9c472cbfa01b0b51c62560_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfOC0yLTEtMS0w_12445721-2a7e-4380-af6d-7cfa0df50d14"
      unitRef="shares">3538628</us-gaap:CommonStockSharesOutstanding>
    <brc:CommonStockAggregateLiquidationPreference
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfMTYtMS0xLTEtMjUy_c3ca905f-c24b-488b-8d24-841a8268a94a"
      unitRef="usd">42716000</brc:CommonStockAggregateLiquidationPreference>
    <brc:CommonStockAggregateLiquidationPreference
      contextRef="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85MS9mcmFnOmIyN2QwYmZmYjExYjRhYzU4NWM5OGFmMWJlMzZiNTYwL3RhYmxlOjYyZjBmMWQzMWFjMjQ1OGI5ZTQ4OGRkZjg3N2NmY2RjL3RhYmxlcmFuZ2U6NjJmMGYxZDMxYWMyNDU4YjllNDg4ZGRmODc3Y2ZjZGNfMTYtMi0xLTEtMjUy_90d536f3-06bc-4f42-902f-863942c981a0"
      unitRef="usd">42716000</brc:CommonStockAggregateLiquidationPreference>
    <us-gaap:StockholdersEquity
      contextRef="i29174ebb22e8416bbfeb7d3a8f58b84e_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDMvZnJhZzpmN2Y5MWVlYWZjYmE0MmMxOGJmZThkY2UwYWJmMDI4ZC90YWJsZTo2NTM3MGE0M2ZlN2M0NmE3ODA5NzUzYTdjMThhNjU5Mi90YWJsZXJhbmdlOjY1MzcwYTQzZmU3YzQ2YTc4MDk3NTNhN2MxOGE2NTkyXzEtMS0xLTEtMA_a2880189-50e6-4eda-9695-b05c6819d610"
      unitRef="usd">700140000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDMvZnJhZzpmN2Y5MWVlYWZjYmE0MmMxOGJmZThkY2UwYWJmMDI4ZC90YWJsZTo2NTM3MGE0M2ZlN2M0NmE3ODA5NzUzYTdjMThhNjU5Mi90YWJsZXJhbmdlOjY1MzcwYTQzZmU3YzQ2YTc4MDk3NTNhN2MxOGE2NTkyXzEtMi0xLTEtMA_ee1cb60f-f64a-4629-a166-e8b368b6f9ec"
      unitRef="usd">752112000</us-gaap:StockholdersEquity>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ic06172d4701a4ab7b9c2d3350639adef_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTUvZnJhZzphMTc0ZTE5OGVhMTY0NTI2ODdlZDZjN2E5YmM5NzE3ZS90YWJsZTpmZDQ4MjUzYzE2NmE0NWU4YTAyMjAxNjFkZTNkYTFjNy90YWJsZXJhbmdlOmZkNDgyNTNjMTY2YTQ1ZThhMDIyMDE2MWRlM2RhMWM3XzAtMi0xLTEtMA_59e56e40-5657-4722-a9ad-ff127f7ff032">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i0b44630cc9db4baf928d615d6a206098_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTUvZnJhZzphMTc0ZTE5OGVhMTY0NTI2ODdlZDZjN2E5YmM5NzE3ZS90YWJsZTpmZDQ4MjUzYzE2NmE0NWU4YTAyMjAxNjFkZTNkYTFjNy90YWJsZXJhbmdlOmZkNDgyNTNjMTY2YTQ1ZThhMDIyMDE2MWRlM2RhMWM3XzAtMy0xLTEtMA_8e1b36fd-3b0d-4b42-9bc4-3f1b9c35e4ac">P33Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ib09235637b7245c18fb83ff8ba5dce2f_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTUvZnJhZzphMTc0ZTE5OGVhMTY0NTI2ODdlZDZjN2E5YmM5NzE3ZS90YWJsZTpmZDQ4MjUzYzE2NmE0NWU4YTAyMjAxNjFkZTNkYTFjNy90YWJsZXJhbmdlOmZkNDgyNTNjMTY2YTQ1ZThhMDIyMDE2MWRlM2RhMWM3XzEtMi0xLTEtMA_68b849f8-7a67-453a-94c9-f37e8b1594fe">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i8cac13e7320547b6ad1de6ddfb4674fe_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTUvZnJhZzphMTc0ZTE5OGVhMTY0NTI2ODdlZDZjN2E5YmM5NzE3ZS90YWJsZTpmZDQ4MjUzYzE2NmE0NWU4YTAyMjAxNjFkZTNkYTFjNy90YWJsZXJhbmdlOmZkNDgyNTNjMTY2YTQ1ZThhMDIyMDE2MWRlM2RhMWM3XzEtMy0xLTEtMA_d2d99fdb-f834-48b7-a00b-4dd273bdabb9">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQyMjU_1190bd3d-bd7d-47bb-bbed-1c76ed3c23be">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ibc566fbc52fc413280c21008b95f2d2e_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzYxMzQ_868397e8-8acc-4c71-bc24-0d551f102867">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzYvZnJhZzo1YWY2ZjczNWI5OGM0MWU4YTgyZDYwYWM0YTA1NWJjZi90YWJsZTpmYjNlMTFmOTA2ZmU0ODY1OTkwNjc0NWQwNGYwNWY3Yi90YWJsZXJhbmdlOmZiM2UxMWY5MDZmZTQ4NjU5OTA2NzQ1ZDA0ZjA1ZjdiXzAtMS0xLTEtMA_f7f0522a-7efb-4aa8-9b1a-b09658d23d22"
      unitRef="number">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzYvZnJhZzo1YWY2ZjczNWI5OGM0MWU4YTgyZDYwYWM0YTA1NWJjZi90YWJsZTpmYjNlMTFmOTA2ZmU0ODY1OTkwNjc0NWQwNGYwNWY3Yi90YWJsZXJhbmdlOmZiM2UxMWY5MDZmZTQ4NjU5OTA2NzQ1ZDA0ZjA1ZjdiXzAtMi0xLTEtMA_29243520-c051-43cc-8472-4d53af91abb3"
      unitRef="number">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzYvZnJhZzo1YWY2ZjczNWI5OGM0MWU4YTgyZDYwYWM0YTA1NWJjZi90YWJsZTpmYjNlMTFmOTA2ZmU0ODY1OTkwNjc0NWQwNGYwNWY3Yi90YWJsZXJhbmdlOmZiM2UxMWY5MDZmZTQ4NjU5OTA2NzQ1ZDA0ZjA1ZjdiXzAtMy0xLTEtMA_54589382-3ee0-4f3b-a3b0-51f5cf6c2e52"
      unitRef="number">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:OpenTaxYear
      contextRef="i492b07c4842642b0873591e8ac7cfcc6_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTEvZnJhZzo2YzM2MTdmNzcyYWM0NzVkODdkOGFlNWI3YzMyNTNlNC90YWJsZTozZGE0Mjc1ODU0OTU0YjFkYjAyMTdmNGZhZGI1NDZiMS90YWJsZXJhbmdlOjNkYTQyNzU4NTQ5NTRiMWRiMDIxN2Y0ZmFkYjU0NmIxXzEtMS0xLTEtMA_4c05f685-5df2-4ae0-b3ca-636742c41b49">2019</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear
      contextRef="if17ad21cc5cd48ad94c4a5dca59fa70e_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTEvZnJhZzo2YzM2MTdmNzcyYWM0NzVkODdkOGFlNWI3YzMyNTNlNC90YWJsZTozZGE0Mjc1ODU0OTU0YjFkYjAyMTdmNGZhZGI1NDZiMS90YWJsZXJhbmdlOjNkYTQyNzU4NTQ5NTRiMWRiMDIxN2Y0ZmFkYjU0NmIxXzEtMi0xLTEtMA_d12cc23e-6c3b-414e-b70e-44711f62ca2c">2021</us-gaap:OpenTaxYear>
    <dei:DocumentType
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzc0_a839dd12-2906-4c3b-a2bb-503c34cf9b28">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6OTE2MGY5NTM0YWY4NGM5NDlhYzRjNjIwMmZlMzZjZGYvdGFibGVyYW5nZTo5MTYwZjk1MzRhZjg0Yzk0OWFjNGM2MjAyZmUzNmNkZl8wLTAtMS0xLTA_1e448858-c881-4c79-9560-61f2ee9fc9d8">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8xMjA_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6ZDA1OGNmZmFiNzU1NGRjNjk4MTk4Yzg5ZmIyZTkwNDgvdGFibGVyYW5nZTpkMDU4Y2ZmYWI3NTU0ZGM2OTgxOThjODlmYjJlOTA0OF8wLTAtMS0xLTA_c3de1cdd-a4dc-4810-be6d-2afee1bd2f35">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yMTk5MDIzMjU4NjYz_b34e9e6e-d416-4656-8f85-c10b53b9fe64">1-14959</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzgx_d3893661-fbc1-48b0-a82d-0e2093ef71e0">BRADY CORP</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6YjkxYTc2YjNiYzI2NDJlMmEyYTA4MmRlMThhYTMxNGEvdGFibGVyYW5nZTpiOTFhNzZiM2JjMjY0MmUyYTJhMDgyZGUxOGFhMzE0YV8wLTAtMS0xLTA_9b372350-5345-44de-8c8a-4e93c4b00c29">WI</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6YjkxYTc2YjNiYzI2NDJlMmEyYTA4MmRlMThhYTMxNGEvdGFibGVyYW5nZTpiOTFhNzZiM2JjMjY0MmUyYTJhMDgyZGUxOGFhMzE0YV8wLTItMS0xLTA_eb41b869-8dab-4310-93f5-efa32b2ee3c4">39-0178960</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yMTk5MDIzMjU4NzM0_a2584165-5fa0-44c5-a943-3f8ae92225f0">6555 West Good Hope Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yMTk5MDIzMjU4NzM1_810090f1-590f-4c11-8c4a-b1b691d4a2bb">Milwaukee</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yMTk5MDIzMjU4NzM2_7a8c26ef-6609-4164-8571-985c81e1dea7">WI</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yMTk5MDIzMjU4NzM3_fa1d556e-4e7b-4b8b-8740-924234bba7ec">53233</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzc1_5f2dfd91-316d-4e40-ab54-6097e7f3dc9d">414</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzgy_f4235202-0d3c-4918-8cc2-18cd99fddac4">358-6600</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6NmE1MGJlYmZmYWI4NGUwMmFlNGQxNWQ2NmJhMzE1NzUvdGFibGVyYW5nZTo2YTUwYmViZmZhYjg0ZTAyYWU0ZDE1ZDY2YmEzMTU3NV8xLTAtMS0xLTA_f8bc5823-ec2a-41c4-afcc-2e9c91363336">Class A Nonvoting Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6NmE1MGJlYmZmYWI4NGUwMmFlNGQxNWQ2NmJhMzE1NzUvdGFibGVyYW5nZTo2YTUwYmViZmZhYjg0ZTAyYWU0ZDE1ZDY2YmEzMTU3NV8xLTEtMS0xLTA_ebb97585-7ced-4988-bfba-db8e3ea234f6">BRC</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6NmE1MGJlYmZmYWI4NGUwMmFlNGQxNWQ2NmJhMzE1NzUvdGFibGVyYW5nZTo2YTUwYmViZmZhYjg0ZTAyYWU0ZDE1ZDY2YmEzMTU3NV8xLTItMS0xLTA_5f9c914f-ebd1-46f7-80f9-e549e3082938">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzc2_fe6fac4c-ae82-4879-864e-c6dbf42df493">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzc3_2467a460-5d6d-4ba5-9aea-af63675b3653">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzg1_67a1364f-263f-4d28-a6a6-986aed7c7703">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzc5_c1e69b68-f8c7-4e0d-bd13-e75a3549fb51">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6NTNhNDYzMTU0YmU5NDk5YzgwZDcyMDlhY2EyNDY0NzgvdGFibGVyYW5nZTo1M2E0NjMxNTRiZTk0OTljODBkNzIwOWFjYTI0NjQ3OF8wLTAtMS0xLTA_59f3417c-6bf4-4fc0-8107-0cdcb444d252">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntityEmergingGrowthCompany
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6NTNhNDYzMTU0YmU5NDk5YzgwZDcyMDlhY2EyNDY0NzgvdGFibGVyYW5nZTo1M2E0NjMxNTRiZTk0OTljODBkNzIwOWFjYTI0NjQ3OF8wLTgtMS0xLTA_1522f530-4969-4193-aeda-6dee9f018cb2">false</dei:EntityEmergingGrowthCompany>
    <dei:EntitySmallBusiness
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGFibGU6NTNhNDYzMTU0YmU5NDk5YzgwZDcyMDlhY2EyNDY0NzgvdGFibGVyYW5nZTo1M2E0NjMxNTRiZTk0OTljODBkNzIwOWFjYTI0NjQ3OF8xLTUtMS0xLTA_832a2401-f270-4d9d-aeef-6f0156b01633">false</dei:EntitySmallBusiness>
    <dei:IcfrAuditorAttestationFlag
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzc4_f19954e2-f802-42c6-91a2-2ec4e4f5f9f6">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNzg3_f175daac-3ce1-497c-8416-8cd79dcae455">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="i1eee4e5dcfc2488c91898ba53a027e2f_I20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNDEx_469fa084-198d-47e6-b529-1f5ffaa0f95c"
      unitRef="usd">2104922847</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="ie7636bb0bea840769aa4eb87e7616b5b_I20210831"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNTQ1_01d1594c-df3c-4e55-a726-c94069217409"
      unitRef="shares">48528245</dei:EntityCommonStockSharesOutstanding>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i1881a9eabe844025b8d729110b1b92e7_I20210831"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xL2ZyYWc6NGY5YTJmZDVmZTNkNDZhZmI5NDZkMGQ1NzU2MDlkODkvdGV4dHJlZ2lvbjo0ZjlhMmZkNWZlM2Q0NmFmYjk0NmQwZDU3NTYwOWQ4OV8yNjM1_270fa735-554b-4109-bd41-ccf94f2446cf"
      unitRef="shares">3538628</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNC0xLTEtMS0w_edba554f-80d6-4b45-ac09-4337533951b0"
      unitRef="usd">147335000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNC0zLTEtMS0w_6fb6d544-7e14-4ed4-a60e-b8842ded4237"
      unitRef="usd">217643000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNS0wLTEtMS0wL3RleHRyZWdpb246MzU2Y2JlNmRlNDNmNGI0NDk3NTJkODlkOTAyNjA2NjRfMjE5OTAyMzI1NTYxNQ_ea15c702-ea5b-41ea-ae49-0b085616ee00"
      unitRef="usd">7306000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNS0wLTEtMS0wL3RleHRyZWdpb246MzU2Y2JlNmRlNDNmNGI0NDk3NTJkODlkOTAyNjA2NjRfMjE5OTAyMzI1NTYyNA_be45b7f5-2390-4ee3-8130-4c0dfdeb33ab"
      unitRef="usd">7157000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNS0xLTEtMS0w_a46ebbfb-ab3e-430c-9ba3-2413ee1d3a8e"
      unitRef="usd">170579000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNS0zLTEtMS0w_a82050cb-7392-41e8-805c-3d2ed9578b50"
      unitRef="usd">146181000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNi0xLTEtMS0w_77acbb0e-8abb-45ec-8ebc-cc1f3f1be754"
      unitRef="usd">136107000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNi0zLTEtMS0w_6c63590f-7dd5-4ab6-a0c4-557578e10487"
      unitRef="usd">135662000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNy0xLTEtMS0w_fa679d54-2018-4729-80ad-95395bf9d9a1"
      unitRef="usd">11083000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfNy0zLTEtMS0w_2f988eea-0e62-423b-a32b-3b94f7c114db"
      unitRef="usd">9962000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfOC0xLTEtMS0w_9fe09137-ad44-4d15-ad92-0fcc86d9fde5"
      unitRef="usd">465104000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfOC0zLTEtMS0w_a8dbf487-cced-4305-b419-25dc5710c9d9"
      unitRef="usd">509448000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfOS0xLTEtMS0w_9e695a55-b9b0-4671-a32d-68757718681f"
      unitRef="usd">121741000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfOS0zLTEtMS0w_aadc7755-1d35-4207-a22d-46ee6947222b"
      unitRef="usd">115068000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTAtMS0xLTEtMA_8af81f3a-c47b-4b77-ac2d-f201088e06ec"
      unitRef="usd">614137000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTAtMy0xLTEtMA_1b453c53-2f0b-4edc-895b-1843e56aede1"
      unitRef="usd">416034000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTEtMS0xLTEtMA_bdf291ec-ea40-499d-84a5-73ff7e5a6d3b"
      unitRef="usd">92334000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTEtMy0xLTEtMA_d27b80eb-182b-461a-acff-84c01da68cd0"
      unitRef="usd">22334000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTItMS0xLTEtMA_53953722-a5c6-4153-afd9-83416ef4d886"
      unitRef="usd">16343000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTItMy0xLTEtMA_7836933e-22c3-4e2b-aee2-59bca4e34c7a"
      unitRef="usd">8845000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTMtMS0xLTEtMA_358784d6-0593-4491-b6fa-3bcc41b70ef4"
      unitRef="usd">41880000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTMtMy0xLTEtMA_2e81074c-de57-437e-b0f3-dc187aeedc68"
      unitRef="usd">41899000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTQtMS0xLTEtMA_aedd7d07-e535-4f33-9b44-85815fe98b3f"
      unitRef="usd">26217000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTQtMy0xLTEtMA_7b9b7f64-f674-4330-b2ca-faf77b216106"
      unitRef="usd">28838000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTUtMS0xLTEtMA_d2d0322a-2c33-41b7-918e-0ab33bd4748e"
      unitRef="usd">1377756000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTUtMy0xLTEtMA_a7d7634e-073d-42c1-b394-445c5c463daf"
      unitRef="usd">1142466000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTgtMS0xLTEtMA_b60660bd-894f-4ac9-a5cf-d419cd0c1e89"
      unitRef="usd">82152000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTgtMy0xLTEtMA_3b0654b3-bda4-45fa-96c7-dd1baf2fb8e6"
      unitRef="usd">62547000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTktMS0xLTEtMA_aff6064c-73a9-416a-b7a6-e41b57ff32bc"
      unitRef="usd">81173000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMTktMy0xLTEtMA_35ab3fcf-7998-4369-ae7b-f164618eaa1b"
      unitRef="usd">41546000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjAtMS0xLTEtMA_f920f40a-bf83-460d-b1c9-97dff3c17658"
      unitRef="usd">13054000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjAtMy0xLTEtMA_19c93815-e413-435f-8061-4dbbf4f90cfb"
      unitRef="usd">8057000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjEtMS0xLTEtMA_08ad1f43-521e-4c71-b92e-6548e16f8980"
      unitRef="usd">3915000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjEtMy0xLTEtMA_09be40e1-f010-4eef-99a6-c39a6efebf24"
      unitRef="usd">8652000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjItMS0xLTEtMA_ec84dfce-7729-4fda-ab6a-6ccf3cb6c613"
      unitRef="usd">17667000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjItMy0xLTEtMA_ea1b6c31-2f43-46ac-b905-5bea57f5fee7"
      unitRef="usd">15304000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjMtMS0xLTEtMA_78bae1d2-5942-42c8-a955-31ce37e0b332"
      unitRef="usd">59623000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjMtMy0xLTEtMA_4458283e-119d-4a0c-a0e1-bcc307d4263b"
      unitRef="usd">49782000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjUtMS0xLTEtMA_7b9dea37-40e5-4082-b858-9d91c32ebe25"
      unitRef="usd">257584000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjUtMy0xLTEtMA_7cab045f-afd0-4cae-bed9-3ac6a317872c"
      unitRef="usd">185888000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermLineOfCredit
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjQtMS0xLTEtNTQ1MQ_61d68e8c-5ba2-467c-9fde-2fb04f071bb1"
      unitRef="usd">38000000</us-gaap:LongTermLineOfCredit>
    <us-gaap:LongTermLineOfCredit
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjYtMy0xLTEtMTM1NQ_d5a3217b-57ee-4df3-bea1-31cebbf03471"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjYtMS0xLTEtMA_5e680ebb-9572-4403-9d4c-946d77580252"
      unitRef="usd">28347000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjYtMy0xLTEtMA_7c2702a5-babf-483f-a3b8-d697f2fd63ca"
      unitRef="usd">31982000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjctMS0xLTEtMA_9fd2c169-aa5e-4819-932e-2ff7b5d4f075"
      unitRef="usd">90797000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjctMy0xLTEtMA_9748e47d-7015-4ca6-bc6c-9c2e4fad6048"
      unitRef="usd">61524000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjgtMS0xLTEtMA_f59117fc-d58c-4fe4-a2c5-4e8e07947b41"
      unitRef="usd">414728000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMjgtMy0xLTEtMA_0540688d-1514-408f-acc6-cb0190d9b060"
      unitRef="usd">279394000</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesIssued
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzAtMC0xLTEtMC90ZXh0cmVnaW9uOjA3ZmFjMTk1OTUzZTRiNmQ4NzY3YjA5NTRmMjkzMTgzXzIxOTkwMjMyNTU3NTE_1e953ab2-6896-4167-8765-d5bddfa199eb"
      unitRef="shares">51261487</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzAtMC0xLTEtMC90ZXh0cmVnaW9uOjA3ZmFjMTk1OTUzZTRiNmQ4NzY3YjA5NTRmMjkzMTgzXzIxOTkwMjMyNTU3NjU_8f7b3170-6fc2-4b3f-8961-42e144eacb3a"
      unitRef="shares">48528245</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzAtMC0xLTEtMC90ZXh0cmVnaW9uOjA3ZmFjMTk1OTUzZTRiNmQ4NzY3YjA5NTRmMjkzMTgzXzIxOTkwMjMyNTU3Nzg_53dba049-ca73-4c6e-b0a0-529466e5fd0f"
      unitRef="shares">48456954</us-gaap:CommonStockSharesOutstanding>
    <brc:CommonStockAggregateLiquidationPreference
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzAtMC0xLTEtMC90ZXh0cmVnaW9uOjA3ZmFjMTk1OTUzZTRiNmQ4NzY3YjA5NTRmMjkzMTgzXzIxOTkwMjMyNTU3OTE_77741c1d-ab3a-4477-9b5e-5f6e0beaf2b3"
      unitRef="usd">42716000</brc:CommonStockAggregateLiquidationPreference>
    <brc:ClassANonvotingCommonStockValueIssued
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzAtMS0xLTEtMA_3dadd942-87ed-464f-94dd-735b53b0851e"
      unitRef="usd">513000</brc:ClassANonvotingCommonStockValueIssued>
    <brc:ClassANonvotingCommonStockValueIssued
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzAtMy0xLTEtMA_3bd69b22-cbd5-4370-ba13-775ef13233d1"
      unitRef="usd">513000</brc:ClassANonvotingCommonStockValueIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i4f08013094aa40e3995bf4bb1f2b873d_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzEtMC0xLTEtMC90ZXh0cmVnaW9uOjc1YmQwODM1MTkxZTQ1YzRhOTYzYjAwZTU5ZDY1ZmJhXzIxOTkwMjMyNTU2MzI_ce246ea6-8a7a-4137-990f-e1bb7bc27145"
      unitRef="shares">3538628</us-gaap:CommonStockSharesOutstanding>
    <brc:ClassBVotingCommonStockValueIssued
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzEtMS0xLTEtMA_77859d09-2ee6-47eb-b9b3-753369e3fc81"
      unitRef="usd">35000</brc:ClassBVotingCommonStockValueIssued>
    <brc:ClassBVotingCommonStockValueIssued
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzEtMy0xLTEtMA_4509efef-88c4-464c-90e7-2389a5f29482"
      unitRef="usd">35000</brc:ClassBVotingCommonStockValueIssued>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzItMS0xLTEtMA_ea75fe47-ed6a-4c3f-89e4-37cdf6f8b044"
      unitRef="usd">339125000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzItMy0xLTEtMA_35141377-172b-4937-b2a3-9c1df67d44ed"
      unitRef="usd">331761000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzMtMS0xLTEtMA_514a9777-6904-43ce-85e9-cdf116aa4721"
      unitRef="usd">788369000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzMtMy0xLTEtMA_add30d5f-ac20-4ec1-8bc2-71ef760aade9"
      unitRef="usd">704456000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockShares
      contextRef="i716d6e4d829141858b211e76d96555e5_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzQtMC0xLTEtMC90ZXh0cmVnaW9uOmFkM2NkMDVhNmE2MTRiZWJiMTM3MzdiYzE2NWNiNDgyXzIxOTkwMjMyNTU2NjE_478b8a53-d577-4410-83c0-7088d20fb84f"
      unitRef="shares">2733242</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="i16aafb1cb0794fc5b34f585aac5e74ef_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzQtMC0xLTEtMC90ZXh0cmVnaW9uOmFkM2NkMDVhNmE2MTRiZWJiMTM3MzdiYzE2NWNiNDgyXzIxOTkwMjMyNTU2ODY_2c875d50-e535-42d6-b09f-24b5e68a192b"
      unitRef="shares">2804533</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzQtMS0xLTEtMA_f8e01030-9724-47ec-968a-693d27b7171b"
      unitRef="usd">109061000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzQtMy0xLTEtMA_ce5d8e33-f186-4997-b1d2-5b2e0609b8ef"
      unitRef="usd">107216000</us-gaap:TreasuryStockValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzUtMS0xLTEtMA_2d571799-0763-4b8b-a4c3-664d037297e3"
      unitRef="usd">-55953000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzUtMy0xLTEtMA_e2ecab0b-a527-4a17-a6bf-dbdf0cf4e0f8"
      unitRef="usd">-66477000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzYtMS0xLTEtMA_404a1d5f-418a-4173-8bf8-eed2b9f73fb3"
      unitRef="usd">963028000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzYtMy0xLTEtMA_39104899-9025-4828-bbe9-3861352d79aa"
      unitRef="usd">863072000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzctMS0xLTEtMA_2cdce10d-62f0-4f71-90f9-3565e09dab3b"
      unitRef="usd">1377756000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl84OC9mcmFnOjA4ZTBlMDM3OGE2ZTQ3ZThhYWM2YTk2OWUzODgzOGFjL3RhYmxlOjNiZGU4NWE1MjNmODQ2OGU4NTAyYzIwMDkyMTQwNWQ4L3RhYmxlcmFuZ2U6M2JkZTg1YTUyM2Y4NDY4ZTg1MDJjMjAwOTIxNDA1ZDhfMzctMy0xLTEtMA_2037883d-47f0-4b7d-ac54-bb4cb78a69c3"
      unitRef="usd">1142466000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMi0xLTEtMS0w_e585f578-5be6-423a-afdf-3dd5e7e53ea9"
      unitRef="usd">1144698000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMi0zLTEtMS0w_95becb7b-e4cb-479f-a77d-30470aa1e89b"
      unitRef="usd">1081299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMi01LTEtMS0w_5645bb1d-f41b-461d-b877-cd19cf91db47"
      unitRef="usd">1160645000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMy0xLTEtMS0w_7e38aa47-da22-47a9-8ee2-131d7cfecde9"
      unitRef="usd">583252000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMy0zLTEtMS0w_25b42cbe-1327-45cf-a4a9-d06722f7b731"
      unitRef="usd">552734000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMy01LTEtMS0w_c5dd5426-d1bf-4cea-b588-c16e414e7c65"
      unitRef="usd">581967000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNC0xLTEtMS0w_ec7dc6d8-2c87-4866-b042-753be1c914de"
      unitRef="usd">561446000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNC0zLTEtMS0w_5aee54cd-49ff-4c4d-8915-2125206c19c0"
      unitRef="usd">528565000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNC01LTEtMS0w_af2d05ed-8226-48a4-b121-58fe98aa9cb0"
      unitRef="usd">578678000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNi0xLTEtMS0w_911ff548-7b14-4cb7-a391-5b8aad541d94"
      unitRef="usd">44551000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNi0zLTEtMS0w_70e42acc-81db-4168-997f-568c50dafeb4"
      unitRef="usd">40662000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNi01LTEtMS0w_c324f843-2e8e-4ae7-98b2-440e5a9ca5d0"
      unitRef="usd">45168000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNy0xLTEtMS0w_95abdc6a-c765-419a-9278-43602e192ee4"
      unitRef="usd">349768000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNy0zLTEtMS0w_a0060062-69f0-4fa1-ba6f-8b2c5356c498"
      unitRef="usd">336059000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfNy01LTEtMS0w_18906ef6-2362-45d9-b84d-f47dd2877bfb"
      unitRef="usd">371082000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:AssetImpairmentCharges
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfOC0xLTEtMS0w_6d7d9e78-2914-471b-9ecd-9b4db3a2c66f"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfOC0zLTEtMS0w_1c2666f1-a785-45bd-ba71-2ed2859db5fa"
      unitRef="usd">13821000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfOC01LTEtMS0w_11b6b18f-cd18-4f3f-a396-c5ae3a5804fa"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:OperatingExpenses
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfOS0xLTEtMS0w_a8771f9a-eca3-4e11-a6a1-eea6d96661da"
      unitRef="usd">394319000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfOS0zLTEtMS0w_6c1c8571-9ddb-4ab5-8c69-bb31242df0d9"
      unitRef="usd">390542000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfOS01LTEtMS0w_d0ecba9e-a2b7-41d6-8366-af2feff735aa"
      unitRef="usd">416250000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTAtMS0xLTEtMA_deba08fc-51ea-4c2a-a397-020731faffca"
      unitRef="usd">167127000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTAtMy0xLTEtMA_286a69de-3f95-4944-a802-c2fed7c93f47"
      unitRef="usd">138023000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTAtNS0xLTEtMA_b51b3e59-088b-4808-8a0b-5df666efd0a9"
      unitRef="usd">162428000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTItMS0xLTEtMA_c49ceaf4-1633-4e61-b534-33915c88870d"
      unitRef="usd">4333000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTItMy0xLTEtMA_388230a9-df1c-4dc4-a93c-7de435fab762"
      unitRef="usd">5079000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTItNS0xLTEtMA_32185f3f-d291-4546-88df-82d1bc06d5b5"
      unitRef="usd">5046000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:InterestExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTMtMS0xLTEtMA_0d8f16d4-2cde-4386-a9b2-8ab0518606ed"
      unitRef="usd">437000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTMtMy0xLTEtMA_860af81d-17db-4f5f-90e3-238ab95c0ca7"
      unitRef="usd">2166000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTMtNS0xLTEtMA_4775b493-a079-4d24-9d5f-9b372aa61400"
      unitRef="usd">2830000</us-gaap:InterestExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTQtMS0xLTEtMA_d9b1298b-e8af-49ed-bca5-ed582fe460bc"
      unitRef="usd">171023000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTQtMy0xLTEtMA_d4e42358-49f5-4c14-84f4-f989930fba6c"
      unitRef="usd">140936000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTQtNS0xLTEtMA_f5e61539-c624-4b10-b079-e933ff34794f"
      unitRef="usd">164644000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTUtMS0xLTEtMA_2460ebd8-0197-46d5-bd7f-52f1749de2e3"
      unitRef="usd">35610000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTUtMy0xLTEtMA_e4ef8356-5f26-4b5f-a8c4-39554ab94f23"
      unitRef="usd">28321000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTUtNS0xLTEtMA_00d81fc4-0146-47b0-aa8b-d237eee632ac"
      unitRef="usd">33386000</us-gaap:IncomeTaxExpenseBenefit>
    <brc:IncomeLossFromContinuingOperationsBeforeIncomeLossFromEquityMethodInvestments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTYtMS0xLTEtMA_c30b8965-e4bd-4076-808b-8b9eb69641fc"
      unitRef="usd">135413000</brc:IncomeLossFromContinuingOperationsBeforeIncomeLossFromEquityMethodInvestments>
    <brc:IncomeLossFromContinuingOperationsBeforeIncomeLossFromEquityMethodInvestments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTYtMy0xLTEtMA_841d5008-2727-458e-958e-6f40131a1a60"
      unitRef="usd">112615000</brc:IncomeLossFromContinuingOperationsBeforeIncomeLossFromEquityMethodInvestments>
    <brc:IncomeLossFromContinuingOperationsBeforeIncomeLossFromEquityMethodInvestments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTYtNS0xLTEtMA_394d3fdd-ceb5-4999-805e-6b98a503c89b"
      unitRef="usd">131258000</brc:IncomeLossFromContinuingOperationsBeforeIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTctMS0xLTEtMA_fef1cfe5-6b9c-4832-920f-71903e589fa9"
      unitRef="usd">-5754000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTctMy0xLTEtMA_62fb194a-c104-42e4-92c3-08bcd3fb7995"
      unitRef="usd">-246000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTctNS0xLTEtMA_73e90ec7-2075-44f4-9063-e1ea7b5c0890"
      unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:NetIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTgtMS0xLTEtMA_881b56ff-cad3-4d48-a9ae-87342ec33bb2"
      unitRef="usd">129659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTgtMy0xLTEtMA_166afd76-9c92-497a-ba08-9400cb204022"
      unitRef="usd">112369000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMTgtNS0xLTEtMA_f7dc00ec-0098-44f7-82c4-47dd3431c326"
      unitRef="usd">131258000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjAtMS0xLTEtMA_986e47e4-f32a-4cbd-8757-95b33c4de266"
      unitRef="usdPerShare">2.49</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjAtMy0xLTEtMA_9aa1f510-b2c0-4855-a841-b94b4e656b63"
      unitRef="usdPerShare">2.13</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjAtNS0xLTEtMA_7a13f60c-45fd-4ec2-81c3-d3fdc9b20c87"
      unitRef="usdPerShare">2.50</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjEtMS0xLTEtMA_bb1553d6-0903-46de-bcfa-211647407f8f"
      unitRef="usdPerShare">2.47</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjEtMy0xLTEtMA_9b5f82ce-d230-4995-a291-f029817db406"
      unitRef="usdPerShare">2.11</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjEtNS0xLTEtMA_f4ec3828-11c5-470a-b9b8-7d0bd8876451"
      unitRef="usdPerShare">2.46</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjItMS0xLTEtMA_db7d9c01-6613-48db-aad3-2cf8de7b5a17"
      unitRef="usdPerShare">0.88</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjItMy0xLTEtMA_4063cfb5-9dd2-4649-b079-cd7b0e2dc28b"
      unitRef="usdPerShare">0.87</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjItNS0xLTEtMA_3f47863a-53d4-4d4c-92bf-c4f136daa440"
      unitRef="usdPerShare">0.85</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:EarningsPerShareBasic
      contextRef="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjQtMS0xLTEtMA_d1aba894-ebb8-4244-a924-3c274cc7d9f8"
      unitRef="usdPerShare">2.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i97e0001e0faa4690ac713d641e867522_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjQtMy0xLTEtMA_f660f41b-77ba-4ed8-8ce3-ed35c3102668"
      unitRef="usdPerShare">2.11</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjQtNS0xLTEtMA_bf0cc8e3-5ef2-44b4-b5f0-6dfa8e851fe9"
      unitRef="usdPerShare">2.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjUtMS0xLTEtMA_1f319a91-3653-4130-810d-cc8bfd7df4c2"
      unitRef="usdPerShare">2.46</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i97e0001e0faa4690ac713d641e867522_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjUtMy0xLTEtMA_2522c2d3-ba50-4d1f-9284-5bed32b1a7c3"
      unitRef="usdPerShare">2.10</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjUtNS0xLTEtMA_d88a755f-53a0-4bd3-a76d-d4d1c42d593a"
      unitRef="usdPerShare">2.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjYtMS0xLTEtMA_5820fdc6-6e12-4104-915f-86bbb74a7115"
      unitRef="usdPerShare">0.86</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i97e0001e0faa4690ac713d641e867522_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjYtMy0xLTEtMA_fd27456a-521b-440a-b34c-9bc720e9ebf7"
      unitRef="usdPerShare">0.85</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjYtNS0xLTEtMA_234b28f4-edbb-4ec2-9c73-3b29ad8d850f"
      unitRef="usdPerShare">0.83</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjgtMS0xLTEtMA_e43809ef-63a0-49ab-8ace-1f60224ccd05"
      unitRef="shares">52039000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjgtMy0xLTEtMA_36b49b07-cb8e-43c6-b07a-28728d25ec0b"
      unitRef="shares">52763000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjgtNS0xLTEtMA_f8f29399-3bd2-455f-8983-8e5868eddf35"
      unitRef="shares">52596000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjktMS0xLTEtMA_ecf835fa-b11d-4bc8-bb52-9801f7ef25e0"
      unitRef="shares">52409000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjktMy0xLTEtMA_9b3cfbbc-f070-40fd-a238-57b142233abc"
      unitRef="shares">53231000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85NC9mcmFnOjY5YmVhNDdjNDBlNTRkYzJiZjY2ODFhMzliMGZmZTIzL3RhYmxlOjJhNDkzYjM4MmJhMTQ3MWNhNDRlZTlkMzdjYTVlMTcwL3RhYmxlcmFuZ2U6MmE0OTNiMzgyYmExNDcxY2E0NGVlOWQzN2NhNWUxNzBfMjktNS0xLTEtMA_a9462167-1f75-4c2a-bf36-9810c87b059b"
      unitRef="shares">53323000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMi0xLTEtMS0w_881b56ff-cad3-4d48-a9ae-87342ec33bb2"
      unitRef="usd">129659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMi0zLTEtMS0w_166afd76-9c92-497a-ba08-9400cb204022"
      unitRef="usd">112369000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMi01LTEtMS0w_f7dc00ec-0098-44f7-82c4-47dd3431c326"
      unitRef="usd">131258000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfNC0xLTEtMS0w_233fe2d7-66ca-4912-be8c-53a8156968f7"
      unitRef="usd">10266000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfNC0zLTEtMS0w_66e06386-c36a-4ff8-a99e-e290c1131aef"
      unitRef="usd">6640000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfNC01LTEtMS0w_dcf5db4a-bf7c-4e9b-8225-1b633ff54dff"
      unitRef="usd">-13223000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfNy0xLTEtMS0w_877f9f51-d7ab-4c75-bffe-9a6afe3b7a8f"
      unitRef="usd">1451000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfNy0zLTEtMS0w_efa1395b-7891-45c7-8a83-a45506263d15"
      unitRef="usd">-576000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfNy01LTEtMS0w_551e22e5-9368-4396-84ca-9aca89495670"
      unitRef="usd">837000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfOC0xLTEtMS0w_d04954a2-9ed6-4a58-9171-1b1dc89e4179"
      unitRef="usd">399000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfOC0zLTEtMS0w_17df467f-deee-4f7a-b813-75adf8cebf45"
      unitRef="usd">614000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfOC01LTEtMS0w_9a34d752-5183-4a2d-a66f-316448f3f5f0"
      unitRef="usd">1048000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationBeforeTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfOS0xLTEtMS0w_af884f9e-317c-4489-a7d2-3d2f6b044945"
      unitRef="usd">1052000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationBeforeTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfOS0zLTEtMS0w_ba1b72ec-3679-4c3c-a778-056f1633592a"
      unitRef="usd">-1190000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationBeforeTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfOS01LTEtMS0w_cc3e2a1d-d8c7-40e6-b338-e3a81f67d278"
      unitRef="usd">-211000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTEtMS0xLTEtMA_880b6bad-ac3d-4b1c-b649-a5748e75f197"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTEtMy0xLTEtMA_bbf4027c-0a26-4bf3-9b4c-687bdcac766e"
      unitRef="usd">-468000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTEtNS0xLTEtMA_a330c817-257a-4930-8730-b5f3fe848b15"
      unitRef="usd">-97000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTItMS0xLTEtMA_497c624f-be3c-4814-8f18-d1c0534ac99b"
      unitRef="usd">388000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTItMy0xLTEtMA_34b0640b-0310-4aef-8dfc-ab2d0b7c2ba6"
      unitRef="usd">380000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTItNS0xLTEtMA_64a707f0-fd95-4009-9790-795753814211"
      unitRef="usd">569000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTMtMS0xLTEtMA_f1002a4c-eae2-44b7-b08f-304624a7c728"
      unitRef="usd">388000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTMtMy0xLTEtMA_673295b1-68f1-4a6c-8c14-ab04e8627e66"
      unitRef="usd">848000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTMtNS0xLTEtMA_57f90cf9-ce6c-4052-aadf-b9aa65dc3bf8"
      unitRef="usd">666000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTUtMS0xLTEtMA_5c7a8e71-23ac-4542-9a9f-21b7b1dbaaf1"
      unitRef="usd">10930000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTUtMy0xLTEtMA_bcf4e8b4-1876-41e0-a78e-4830e6517e5a"
      unitRef="usd">4602000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTUtNS0xLTEtMA_f42d1f08-ddac-4bf9-b00c-f08f431af8c7"
      unitRef="usd">-14100000</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTYtMS0xLTEtMA_5a079695-f96e-41f5-aeb1-391da477faf1"
      unitRef="usd">406000</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTYtMy0xLTEtMA_ba832532-9bfd-42ab-9f89-f8192ea12372"
      unitRef="usd">-175000</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTYtNS0xLTEtMA_93449bc0-dab1-4fe2-8c9c-3be8f1886bdf"
      unitRef="usd">753000</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTctMS0xLTEtMA_0898fc4a-ccd2-42b7-9e66-a810fdd8c354"
      unitRef="usd">10524000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTctMy0xLTEtMA_c41c201f-6107-4f49-8919-d55120b15688"
      unitRef="usd">4777000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTctNS0xLTEtMA_51c62f01-4a60-44de-89cd-191658b429a6"
      unitRef="usd">-14853000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTgtMS0xLTEtMA_980722b9-64fc-44f1-8e6f-b3c458957dbc"
      unitRef="usd">140183000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTgtMy0xLTEtMA_07b27b31-4b1e-42ac-bae7-799b0937c87b"
      unitRef="usd">117146000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl85Ny9mcmFnOjFkZDc0NTc2NmQ4ODQyZTFiMjY2ZWYwMzNlODcwZDE1L3RhYmxlOjdiNDUyYjZkMWY0NDQ1NmFiZDIyMjM2MTIwMWIzODU3L3RhYmxlcmFuZ2U6N2I0NTJiNmQxZjQ0NDU2YWJkMjIyMzYxMjAxYjM4NTdfMTgtNS0xLTEtMA_918297d0-aeff-400c-87e9-eaf159609436"
      unitRef="usd">116405000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i68c2aedccfc849f98d5c628f1c9fb61a_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzItMi0xLTEtMA_afdd55ec-33e4-4dfe-968f-77058111ca1f"
      unitRef="usd">548000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idc12c2f6b006442fadc3054ba83bc5b2_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzItNC0xLTEtMA_58635b96-d40c-4595-b2e6-a723725f382b"
      unitRef="usd">325631000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i77e1379c9d094da582a8fcb77839c2fe_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzItNi0xLTEtMA_ad272985-983f-44ed-b621-fe3eb0430e4c"
      unitRef="usd">553454000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i75f0df2cf57648b3a88bbcfd867bbb20_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzItOC0xLTEtMA_f0be6c03-6295-48dc-9914-17cd168814f3"
      unitRef="usd">-71120000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i018a2cce4d8540e68fc9b945b0215ab8_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzItMTAtMS0xLTA_9451ceca-9825-4509-a9af-b374a3e70b2e"
      unitRef="usd">-56401000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzMtNi0xLTEtMA_f7dc00ec-0098-44f7-82c4-47dd3431c326"
      unitRef="usd">131258000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i5e1dc197c81f499fb8d103574f8e7eee_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzQtMTAtMS0xLTA_767e1265-275b-4968-b30f-2fa9d23b58c6"
      unitRef="usd">-14853000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested
      contextRef="i0f10af2317014e449d44f0417b9d72bf_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzUtNC0xLTEtMA_0f254f13-90d4-40e6-a3f8-189a33f68029"
      unitRef="usd">7963000</brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested>
    <brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested
      contextRef="i16e1bd27f2bb418e953bc4d68d0d2f35_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzUtOC0xLTEtMA_74255410-0d99-4b60-9242-476e002b2ffb"
      unitRef="usd">27970000</brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
      contextRef="i0f10af2317014e449d44f0417b9d72bf_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzYtNC0xLTEtMA_26911281-0e40-44ee-8366-b66f1e2c6a41"
      unitRef="usd">209000</us-gaap:AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i0f10af2317014e449d44f0417b9d72bf_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzctNC0xLTEtMA_a89f7e8b-be13-49f2-bd6d-921bddea499a"
      unitRef="usd">12092000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="i16e1bd27f2bb418e953bc4d68d0d2f35_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzgtOC0xLTEtMA_4aedd272-842b-4475-97d4-f9ad7432f815"
      unitRef="usd">-3182000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i8c08a0ca1b8a4dc0b71cfd4c0f44a70f_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzktNi0xLTEtMA_08c9c95d-a08f-46cf-9cd0-3f5e6268e6dc"
      unitRef="usd">-2137000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <brc:PaymentofOrdinaryDividendsCommonStockClassA
      contextRef="i7064a2c6a8ea405788230ce37ce35bf1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzExLTYtMS0xLTA_373a4753-5412-48ff-95aa-d17fc4c5ca0d"
      unitRef="usd">41784000</brc:PaymentofOrdinaryDividendsCommonStockClassA>
    <brc:PaymentofOrdinaryDividendsCommonStockClassB
      contextRef="i7064a2c6a8ea405788230ce37ce35bf1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzEyLTYtMS0xLTA_7b051edc-a4b1-4411-ae66-ce21304a5c09"
      unitRef="usd">2948000</brc:PaymentofOrdinaryDividendsCommonStockClassB>
    <us-gaap:StockholdersEquity
      contextRef="i32bf33d04ec64ce7914b597b09311c95_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzEzLTItMS0xLTA_e8839c79-6633-4b27-8617-c7d18ea904c2"
      unitRef="usd">548000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if19dea63a8af44d9bf5b7a118b83c322_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzEzLTQtMS0xLTA_d9aad888-dd96-4b2b-871e-f204ce064c17"
      unitRef="usd">329969000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8c4a11921f3f430bb95ef3d523e26513_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzEzLTYtMS0xLTA_fb3189aa-083d-4927-abec-011a74e75d34"
      unitRef="usd">637843000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia57abb2eddff4cb8a14574c0b77b8bc8_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzEzLTgtMS0xLTA_1465fb3a-4c27-41a3-8462-58c7d3223968"
      unitRef="usd">-46332000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i73e93566a9fa4ab89d235d386ee97604_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzEzLTEwLTEtMS0w_2c7522e7-2b8f-4d59-9697-eb4e33ed5629"
      unitRef="usd">-71254000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE0LTYtMS0xLTA_166afd76-9c92-497a-ba08-9400cb204022"
      unitRef="usd">112369000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i9a58fa1027b040bca4bec9966b971ab6_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE1LTEwLTEtMS0w_5872ae6f-1eeb-4c01-b12e-ff7e8d0150ec"
      unitRef="usd">4777000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested
      contextRef="i6d8a7595bfe140a4926d15872f1e0a00_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE2LTQtMS0xLTA_8dfc24f3-a70a-4845-ae74-99d6567edca0"
      unitRef="usd">7184000</brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested>
    <brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested
      contextRef="i9e5fd943563d46e1921bdc8fe016edcb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE2LTgtMS0xLTA_86694bf7-e5b4-4e25-be7c-dd5bce81333f"
      unitRef="usd">3630000</brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
      contextRef="i6d8a7595bfe140a4926d15872f1e0a00_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE3LTQtMS0xLTA_b1201c0d-597a-4755-9477-b36bf3e9364c"
      unitRef="usd">134000</us-gaap:AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i6d8a7595bfe140a4926d15872f1e0a00_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE4LTQtMS0xLTA_4336b3cc-8865-46d2-a50c-ca20b1e0ba65"
      unitRef="usd">8843000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="i9e5fd943563d46e1921bdc8fe016edcb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzE5LTgtMS0xLTA_0dc5338a-18f7-4349-ac5c-406fd2e57ffa"
      unitRef="usd">-64514000</us-gaap:StockRepurchasedDuringPeriodValue>
    <brc:PaymentofOrdinaryDividendsCommonStockClassA
      contextRef="i3df078a8bb4f4512b65b14c3de232c91_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzIyLTYtMS0xLTA_d6d81b0d-2de9-4829-844f-2ec24dea47a7"
      unitRef="usd">42736000</brc:PaymentofOrdinaryDividendsCommonStockClassA>
    <brc:PaymentofOrdinaryDividendsCommonStockClassB
      contextRef="i3df078a8bb4f4512b65b14c3de232c91_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzIzLTYtMS0xLTA_f10db511-1f97-4dbd-9dca-93a28dca28bf"
      unitRef="usd">3020000</brc:PaymentofOrdinaryDividendsCommonStockClassB>
    <us-gaap:StockholdersEquity
      contextRef="id43c9cb6e3b344378ed5df512f4d9074_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI0LTItMS0xLTA_4e7e0bc0-73ff-4904-8361-a63757c289d0"
      unitRef="usd">548000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ifa6ea092de1542ff80f641bb13eb7a3e_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI0LTQtMS0xLTA_4168882e-c993-42d5-8b46-b8376a99de35"
      unitRef="usd">331762000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib1bbdebad3214b2dba2ae5ce751a7f6b_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI0LTYtMS0xLTA_291d16c5-d2c5-498a-96c4-698414da4478"
      unitRef="usd">704456000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ifa78cc1a02764f15add8845797bd34e0_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI0LTgtMS0xLTA_3e0cd044-3ce1-4736-bcf6-2b7d65965b59"
      unitRef="usd">-107216000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id1d245ab7e4549f7974cbe6a70ec5f8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI0LTEwLTEtMS0w_5bd3e944-f03a-4859-9c12-758679daf045"
      unitRef="usd">-66477000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI1LTYtMS0xLTA_881b56ff-cad3-4d48-a9ae-87342ec33bb2"
      unitRef="usd">129659000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i21f00e4d69724103a47803b1fe1bb49f_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI2LTEwLTEtMS0w_20195106-4237-42c5-ad89-c46a2990027c"
      unitRef="usd">10524000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested
      contextRef="i5213a5ac1a8144feac6f214b06849eaf_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI3LTQtMS0xLTA_5398276a-aa5f-4b71-9a26-bd0032f2e24e"
      unitRef="usd">2767000</brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested>
    <brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested
      contextRef="i42489dd6e8fd4b29acf2b9336aa7c5e1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI3LTgtMS0xLTA_bccfc058-b8a2-4a08-aafd-7836ffe10bdd"
      unitRef="usd">1748000</brc:StockIssuedValueStockOptionsExercisedAndRestrictedStockVested>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
      contextRef="i5213a5ac1a8144feac6f214b06849eaf_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI4LTQtMS0xLTA_1fa347f3-e0aa-44d5-8f49-da8925b37dc8"
      unitRef="usd">32000</us-gaap:AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i5213a5ac1a8144feac6f214b06849eaf_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzI5LTQtMS0xLTA_a32edc3c-d19c-4c5e-b68f-8c5d968ceb93"
      unitRef="usd">10098000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzMwLTgtMS0xLTA_ec6db633-a5f4-448a-a10b-ddd76ce1fbfb"
      unitRef="usd">3593000</us-gaap:StockRepurchasedDuringPeriodValue>
    <brc:PaymentofOrdinaryDividendsCommonStockClassA
      contextRef="i9180346702c94c2dab995a19df014b14_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzMyLTYtMS0xLTA_59b06b9e-3d63-4fb1-8f0e-ac1fa3bedbe3"
      unitRef="usd">42690000</brc:PaymentofOrdinaryDividendsCommonStockClassA>
    <brc:PaymentofOrdinaryDividendsCommonStockClassB
      contextRef="i9180346702c94c2dab995a19df014b14_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzMzLTYtMS0xLTA_739d38a0-4866-45b4-9c22-d00190a00040"
      unitRef="usd">3056000</brc:PaymentofOrdinaryDividendsCommonStockClassB>
    <us-gaap:StockholdersEquity
      contextRef="i6ce0a46f78b1455ab9478776f8bdaf18_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzM0LTItMS0xLTA_35fbdf50-7b83-4183-848e-530442f90b05"
      unitRef="usd">548000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib9ecc8468233466fa4704c83af6ed037_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzM0LTQtMS0xLTA_5b7c70b1-1eb8-4dec-8cd8-4c3becb6210b"
      unitRef="usd">339125000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if54602ebf28c48c1b6c1890b4864e5fa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzM0LTYtMS0xLTA_224ba289-c3f6-4d4a-a7e9-6da9354da3dc"
      unitRef="usd">788369000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib23986197fea4d98b341dc6399a32140_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzM0LTgtMS0xLTA_4cb6f1da-65ca-4031-991b-442df85105da"
      unitRef="usd">-109061000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7f816344af4f48e8af4d5e9b6c6f5f9c_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDAvZnJhZzo3MTg0MjgyNTAxYzE0MWQ3YmY3NTVkMWZmNjJkZWM5NS90YWJsZTo2OTdmZGE1NTIxMTc0ODcxYjc5YzJkYWY4YjdiZjQ4Yy90YWJsZXJhbmdlOjY5N2ZkYTU1MjExNzQ4NzFiNzljMmRhZjhiN2JmNDhjXzM0LTEwLTEtMS0w_990b3fd2-2134-4185-b688-7ec6c8a109e4"
      unitRef="usd">-55953000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMtMS0xLTEtMA_881b56ff-cad3-4d48-a9ae-87342ec33bb2"
      unitRef="usd">129659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMtMy0xLTEtMA_166afd76-9c92-497a-ba08-9400cb204022"
      unitRef="usd">112369000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMtNS0xLTEtMA_f7dc00ec-0098-44f7-82c4-47dd3431c326"
      unitRef="usd">131258000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzUtMS0xLTEtMA_494769d2-8eb9-446e-94a8-3fe7d8e389b3"
      unitRef="usd">25483000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzUtMy0xLTEtMA_79ecf1a5-a09a-43f4-be2a-33d42f14f9ec"
      unitRef="usd">23437000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzUtNS0xLTEtMA_b43a834d-569f-4462-91eb-9c0916bac827"
      unitRef="usd">23799000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ShareBasedCompensation
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzYtMS0xLTEtMA_7f930b79-db08-4de0-9786-567a9bf36a87"
      unitRef="usd">10098000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzYtMy0xLTEtMA_5b14f17c-9e85-46d3-8b46-3b2a3a8bf3ea"
      unitRef="usd">8843000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzYtNS0xLTEtMA_1eeff1b8-5323-4a4c-9bc1-cae863971fe9"
      unitRef="usd">12092000</us-gaap:ShareBasedCompensation>
    <brc:Deferredincometaxbenefitexpensetotalcompany
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzgtMS0xLTEtMA_e5e88a7b-6e4c-4529-a1e7-96b3b96bd2d3"
      unitRef="usd">-8965000</brc:Deferredincometaxbenefitexpensetotalcompany>
    <brc:Deferredincometaxbenefitexpensetotalcompany
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzgtMy0xLTEtMA_96171184-dcac-40d5-8e81-a4dec2fe6a8e"
      unitRef="usd">-764000</brc:Deferredincometaxbenefitexpensetotalcompany>
    <brc:Deferredincometaxbenefitexpensetotalcompany
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzgtNS0xLTEtMA_660ec0be-6463-43e9-8367-3e18d7e5962a"
      unitRef="usd">7825000</brc:Deferredincometaxbenefitexpensetotalcompany>
    <us-gaap:AssetImpairmentCharges
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzktMS0xLTEtMA_d38485b0-a88b-4028-9164-cf8046839071"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzktMy0xLTEtMA_1c2666f1-a785-45bd-ba71-2ed2859db5fa"
      unitRef="usd">13821000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzktNS0xLTEtMA_11b6b18f-cd18-4f3f-a396-c5ae3a5804fa"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzEwLTEtMS0xLTA_d05bed82-8311-4cbc-b660-e4f94cc7e915"
      unitRef="usd">-5754000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzEwLTMtMS0xLTA_a6fe95f4-1fbb-4062-ad86-a41a2d640b26"
      unitRef="usd">-246000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzEwLTUtMS0xLTA_ed8661b5-a1f3-4778-a2eb-dde1ae347bd1"
      unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzExLTEtMS0xLTA_cef91ef3-25cc-482e-8a1c-a819010683a3"
      unitRef="usd">831000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzExLTMtMS0xLTA_bdf197b7-2e81-4cb0-a4c6-48cd52c5d258"
      unitRef="usd">-2611000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzExLTUtMS0xLTA_4691af4f-61ca-4196-8fc1-ea7b4a031049"
      unitRef="usd">-2347000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzEzLTEtMS0xLTA_36a2f060-fbad-43dc-a28c-a9ac206bea2e"
      unitRef="usd">12614000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzEzLTMtMS0xLTA_680b33cf-0358-43eb-b787-9d0c4051a9f9"
      unitRef="usd">-13902000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzEzLTUtMS0xLTA_d993595b-59ab-4960-8b0f-17bf9034f9fd"
      unitRef="usd">-3496000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE0LTEtMS0xLTA_bbebae41-01a7-4d1e-9c7f-c844bdbbd995"
      unitRef="usd">-7298000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE0LTMtMS0xLTA_209c6056-6f21-4d1e-bdde-f1a11f67658b"
      unitRef="usd">13917000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE0LTUtMS0xLTA_cbf7a8b0-351d-4ac5-8851-e0fdb6d2ceda"
      unitRef="usd">9922000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE1LTEtMS0xLTA_58af32f4-fd91-4c47-a2ca-c11a323db5de"
      unitRef="usd">4498000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE1LTMtMS0xLTA_cf6ab29c-8cab-4bf3-a59d-c20d225f5470"
      unitRef="usd">-4477000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE1LTUtMS0xLTA_ea95de11-b504-4ff8-aa4c-2c8994a4ed00"
      unitRef="usd">-368000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE2LTEtMS0xLTA_9e247b86-c0e8-4207-8cbe-70f2d0110a02"
      unitRef="usd">58283000</us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE2LTMtMS0xLTA_a1f1c520-ce7d-47c8-abce-6114067cb9c5"
      unitRef="usd">-26128000</us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE2LTUtMS0xLTA_93d99595-54fe-4a81-addf-ee865a1a1da8"
      unitRef="usd">-11903000</us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE3LTEtMS0xLTA_349cba5d-9ed0-420e-a1f6-4d18690fb811"
      unitRef="usd">-4002000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE3LTMtMS0xLTA_79777676-cf00-4b4e-b1d6-43fbfca95776"
      unitRef="usd">2080000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE3LTUtMS0xLTA_d71d8371-d4c8-4b43-9b39-f2adfbdd5a34"
      unitRef="usd">2851000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE4LTEtMS0xLTA_5eb88a7b-e641-45de-a09d-5133093265fe"
      unitRef="usd">205665000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE4LTMtMS0xLTA_7e4dce2c-3aa4-4415-9107-0a208f737804"
      unitRef="usd">140977000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzE4LTUtMS0xLTA_955c15cc-8b65-47ef-9281-f5813b62a552"
      unitRef="usd">162211000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIwLTEtMS0xLTA_5f144db1-3955-4dd6-8001-80e850c4978d"
      unitRef="usd">27189000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIwLTMtMS0xLTA_7d2b53c0-0df7-4628-a64a-34132a2dafb3"
      unitRef="usd">27277000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIwLTUtMS0xLTA_3ba6822f-3f75-4bbf-ba6d-391de9aae321"
      unitRef="usd">32825000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIyLTEtMS0xLTA_e1d5a4ee-b434-4409-9551-05edd7fa807b"
      unitRef="usd">243983000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIyLTMtMS0xLTA_c9905f36-5b73-4f55-8926-5306b5555041"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIyLTUtMS0xLTA_ae164ded-3b11-4c89-93c6-bd9b92d2ffea"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIzLTEtMS0xLTA_0368199a-c98e-429e-af44-262cae0f78cd"
      unitRef="usd">-2580000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIzLTMtMS0xLTA_16b11add-11aa-41c7-ad1f-f5caf20006d8"
      unitRef="usd">8842000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzIzLTUtMS0xLTA_afca0aec-471a-47b2-aa57-844a1f06b80f"
      unitRef="usd">1638000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI0LTEtMS0xLTA_78314757-f60c-4c9f-9f0a-40175ba9dc6b"
      unitRef="usd">-268592000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI0LTMtMS0xLTA_177cd792-5968-46df-a477-6bfc1a051a81"
      unitRef="usd">-36119000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI0LTUtMS0xLTA_027f80c0-0b39-471b-bf6a-6bfcd589c66f"
      unitRef="usd">-34463000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividends
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI2LTEtMS0xLTA_56946c35-168b-4733-85c2-cf09afbb5c77"
      unitRef="usd">45746000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI2LTMtMS0xLTA_a91c34ea-c26d-418d-a3e2-13d836a6fc43"
      unitRef="usd">45756000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI2LTUtMS0xLTA_43fb412e-f7b6-453b-9e92-7e919173371e"
      unitRef="usd">44732000</us-gaap:PaymentsOfDividends>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI3LTEtMS0xLTA_7613a666-d1f1-4903-bf65-0a6b652a1a50"
      unitRef="usd">1765000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI3LTMtMS0xLTA_0bc82e3b-cf17-47b0-9f88-7c0493e022d8"
      unitRef="usd">5511000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI3LTUtMS0xLTA_4483f619-bec4-4150-bd9e-c412b4814d8b"
      unitRef="usd">25658000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI4LTEtMS0xLTA_52fef228-80eb-4e34-945f-28a9986780c3"
      unitRef="usd">2783000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI4LTMtMS0xLTA_65a61bf1-9f1a-46f6-bbc0-c7163949ca09"
      unitRef="usd">9065000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI4LTUtMS0xLTA_3483ed13-dfc9-4d47-8695-c3165b7b7ae9"
      unitRef="usd">5651000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI5LTEtMS0xLTA_072f80ea-7164-43eb-a881-b6bbb151254c"
      unitRef="usd">3593000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI5LTMtMS0xLTA_b2d70ca9-d5ca-42f5-be68-fc4212040ba1"
      unitRef="usd">64514000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzI5LTUtMS0xLTA_cde0290e-6b8f-4fce-bd38-0b571b54e8a9"
      unitRef="usd">3182000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMwLTEtMS0xLTA_9fec6624-f3e7-49df-9c89-ee00d9130271"
      unitRef="usd">101957000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMwLTMtMS0xLTA_ea2e18be-1431-43f4-b4e5-536eb314973e"
      unitRef="usd">20697000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMwLTUtMS0xLTA_a4cce7a1-2c55-40dc-99a5-6f8c853345ce"
      unitRef="usd">13637000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMxLTEtMS0xLTA_c88989bb-2044-4f87-ae45-efddff8e56fe"
      unitRef="usd">63957000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMxLTMtMS0xLTA_3fd28b8c-d744-4b3f-93f5-800877eb7930"
      unitRef="usd">21855000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMxLTUtMS0xLTA_84e2c892-b572-4a70-9272-8ff930435bfc"
      unitRef="usd">13568000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMyLTEtMS0xLTA_22acecd5-8b5e-49f6-ae24-aa16250e0698"
      unitRef="usd">0</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMyLTMtMS0xLTA_f82a4cff-6dc3-4abb-a919-8c7e484c4837"
      unitRef="usd">48672000</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMyLTUtMS0xLTA_77d1fb34-d551-419f-bf69-4fbb1852b510"
      unitRef="usd">0</us-gaap:RepaymentsOfLongTermDebtAndCapitalSecurities>
    <us-gaap:ProceedsFromPaymentsForOtherFinancingActivities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMzLTEtMS0xLTA_4ee4272b-0d86-4f98-b4bc-040c8f5a0540"
      unitRef="usd">33000</us-gaap:ProceedsFromPaymentsForOtherFinancingActivities>
    <us-gaap:ProceedsFromPaymentsForOtherFinancingActivities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMzLTMtMS0xLTA_2cb2ee4d-cf90-44c7-b401-e8a0f68bad7e"
      unitRef="usd">134000</us-gaap:ProceedsFromPaymentsForOtherFinancingActivities>
    <us-gaap:ProceedsFromPaymentsForOtherFinancingActivities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzMzLTUtMS0xLTA_38cbda22-cff4-409e-9e39-c7024bedf045"
      unitRef="usd">210000</us-gaap:ProceedsFromPaymentsForOtherFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM0LTEtMS0xLTA_e3bff9d7-2059-4b4e-9ca3-43ec712d5b17"
      unitRef="usd">-12324000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM0LTMtMS0xLTA_fdee8a95-5d03-409f-9008-3aa6c4bcafae"
      unitRef="usd">-163520000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM0LTUtMS0xLTA_1bbb3079-e29b-4adb-8a89-9934d5157a60"
      unitRef="usd">-27628000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM1LTEtMS0xLTA_f2fe7bf2-7a53-4f63-89be-b1bd6195ba3c"
      unitRef="usd">4943000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM1LTMtMS0xLTA_13e40f98-1756-4258-9610-f7e18af45fdd"
      unitRef="usd">-2767000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM1LTUtMS0xLTA_65a30069-3fb4-4ef8-8bef-2dedf282dc0e"
      unitRef="usd">-2475000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM2LTEtMS0xLTA_22bc7385-7bbd-4de9-b8f1-eaae582de2ab"
      unitRef="usd">-70308000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM2LTMtMS0xLTA_865536a1-dcfc-4615-8b56-ac9dfae89933"
      unitRef="usd">-61429000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM2LTUtMS0xLTA_7ce2c752-fe80-454f-80f6-48a42ca38e31"
      unitRef="usd">97645000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM3LTEtMS0xLTA_b10c5ed1-7877-40db-88f4-813a680ca84d"
      unitRef="usd">217643000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM3LTMtMS0xLTA_ad533b4b-ea86-4df3-b033-e0269ede413c"
      unitRef="usd">279072000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i29174ebb22e8416bbfeb7d3a8f58b84e_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM3LTUtMS0xLTA_95a5af2e-d902-4514-adb4-8b2804c1ab7f"
      unitRef="usd">181427000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM4LTEtMS0xLTA_a87e6c20-ddee-4ef5-bdd6-ce5a4820113f"
      unitRef="usd">147335000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM4LTMtMS0xLTA_2ef564b3-59a5-444c-a2d3-738a1f39abf8"
      unitRef="usd">217643000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzM4LTUtMS0xLTA_669f3805-713a-4c45-bb6d-870c108f58fb"
      unitRef="usd">279072000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:InterestPaidNet
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzQxLTEtMS0xLTA_45e71cd4-29bd-46e5-91fb-b5a007e590ba"
      unitRef="usd">373000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzQxLTMtMS0xLTA_4698baed-812f-4d6a-af1a-443519507ea7"
      unitRef="usd">2401000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzQxLTUtMS0xLTA_5a2cfc30-e0b1-4758-8d4d-a83e46fd5cae"
      unitRef="usd">2651000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzQyLTEtMS0xLTA_509cba43-5f93-4044-b3a1-df710a491516"
      unitRef="usd">46852000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzQyLTMtMS0xLTA_30c7145b-1771-4beb-b664-b75f082b5d70"
      unitRef="usd">29600000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMDYvZnJhZzplMTcxNGJmOWY4ODA0ZjczYjJjYWIxNzJkMGM0ZGQwZC90YWJsZTo0YTk2ZGE5NjNjZTU0OTczOWIxN2EwYmZlNWIzMzliNS90YWJsZXJhbmdlOjRhOTZkYTk2M2NlNTQ5NzM5YjE3YTBiZmU1YjMzOWI1XzQyLTUtMS0xLTA_afc36e05-f791-4de8-8c12-1cd689afc0e1"
      unitRef="usd">24335000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzI1ODc2_3e930406-b9d8-481d-a987-2ad8a7f28d1d">Summary of Significant Accounting Policies&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Nature of Operations &#x2014;&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; Brady Corporation is a global manufacturer and supplier of identification solutions and workplace safety products that identify and protect premises, products and people. The ability to provide customers with a broad range of proprietary, customized, and diverse products for use in various applications, along with a commitment to quality and service, a global footprint, and multiple sales channels, have made Brady a world leader in many of its markets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Principles of Consolidation &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The accompanying consolidated financial statements include the accounts of Brady Corporation and its wholly owned subsidiaries. All intercompany accounts and transactions between consolidated subsidiaries have been eliminated in consolidation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Use of Estimates &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP"), which requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities as of the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Acquisitions&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; &#x2014; The Company recognizes assets acquired, liabilities assumed, contractual contingencies and contingent consideration at their fair value on the acquisition date. The operating results of the acquired companies are included in the Company&#x2019;s consolidated financial statements from the date of acquisition. Acquisition-related costs are expensed as incurred and changes in deferred tax asset valuation allowances and income tax uncertainties after the measurement period are recorded in Provision for Income Taxes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Cash Equivalents &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company considers all highly-liquid investments purchased with original maturities of three months or less to be cash equivalents.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Concentration of Credit Risk&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; &#x2014; The Company places temporary cash investments with global financial institutions of high credit quality. The Company performs periodic evaluations of the relative credit standing of its financial institutions and limits the amount of credit exposure with any one financial institution. In addition, the Company has a broad customer base representing many diverse industries throughout the globe. Consequently, no significant concentration of credit risk is considered to exist.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Accounts Receivables &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company's policy for estimating the allowance for credit losses on accounts receivables considers several factors including historical loss experience, the age of delinquent receivable balances due, and economic conditions. Specific customer reserves are made during review of significant outstanding balances due, in which customer creditworthiness and current economic trends may indicate that it is probable the receivable will not be recovered. Accounts receivables are written off after collection efforts occur and the receivable is deemed uncollectible. Adjustments to the allowance for credit losses are recorded in SG&amp;amp;A expense. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Equity Method Investment &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The equity method of accounting is applied to investments in which the Company has an ownership interest of between 20% and 50%. The Company evaluates its equity method investments each reporting period for evidence of a loss in value that is other than a temporary decline. Evidence of a loss in value might include, but would not necessarily be limited to, absence of an ability to recover the carrying amount of the investment or the inability of the investee to sustain an earnings capacity that would justify the carrying amount of the investment. The Company performed this analysis and concluded that its investment in React Mobile, Inc. was other-than-temporarily impaired and recognized an impairment charge of $4,994 for the year ended July&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Inventories &#x2014;&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; Inventories are stated at the lower of cost or net realizable value and include material, labor, and overhead. Cost has been determined using the last-in, first-out (&#x201c;LIFO&#x201d;) method for certain inventories in the U.S. (12.5% of total inventories at July&#160;31, 2021, and 14.7% of total inventories at July&#160;31, 2020) and the first-in, first-out (&#x201c;FIFO&#x201d;) or average cost methods for all other inventories. Had all inventories been accounted for on a FIFO basis instead of on a LIFO basis, the carrying value of inventories would have increased by $7,707 and $7,195 as of July&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;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;Inventories consist of the following as of July 31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:76.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.575%"/&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:9pt;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:9pt;font-weight:700;line-height:100%"&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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished products&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;87,489&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,547&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;font-weight:400;line-height:100%"&gt;24,044&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials and supplies&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:9pt;font-weight:400;line-height:100%"&gt;28,429&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;26,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;136,107&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;135,662&#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;text-indent:18pt"&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;Property, Plant and Equipment &#x2014;&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; Property, plant and equipment are stated at cost, less accumulated depreciation. Depreciation is computed primarily on a straight-line basis over the estimated useful lives of the related assets. Leasehold improvements are depreciated over the shorter of the lease term or the estimated useful life of the respective asset. The estimated useful lives range from 3 to 33 years as shown below.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Property, plant and equipment consist of the following as of July 31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.478%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;Range of Useful Lives&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:9pt;font-weight:700;line-height:100%"&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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,201&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buildings and improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10&#160;to&#160;33&#160;Years&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:9pt;font-weight:400;line-height:100%"&gt;108,801&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;105,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&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:9pt;font-weight:400;line-height:100%"&gt;3 to 10 Years&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:9pt;font-weight:400;line-height:100%"&gt;276,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;267,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Construction in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,991&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;8,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&#x2014;gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:400;line-height:100%"&gt;398,987&#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:9pt;font-weight:400;line-height:100%"&gt;391,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(277,246)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(276,248)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&#x2014;net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;121,741&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;115,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Depreciation expense was $18,406, $18,218, and $18,023 for the years ended July&#160;31, 2021, 2020 and 2019, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill  &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company evaluates the carrying amount of goodwill annually or more frequently if events or changes in circumstances have occurred that indicate the goodwill might be impaired. The Company completes impairment reviews for its reporting units using a fair-value method based on management's judgments and assumptions. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When performing its annual impairment assessment, the Company evaluates the recoverability of goodwill assigned to each of its reporting units by comparing the estimated fair value of the respective reporting unit to the carrying value, including goodwill. The Company estimates fair value utilizing the income approach and the market approach. The income approach requires management to make a number of assumptions and estimates for each reporting unit, including projected future operating results, economic projections, anticipated future cash flows, working capital levels, income tax rates, and a weighted-average cost of capital reflecting the specific risk profile of the respective reporting unit. The market approach estimates fair value using performance multiples of comparable publicly-traded compa&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;nies. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the event the fair value of a reporting unit is less than the carrying value, including goodwill, &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;an impairment loss, if any, is recognized for the difference between the implied fair value and the carrying value of the reporting unit's goodwill. The annual impairment testing performed on May 1, 2021, indicated that all reporting units with remaining goodwill had a fair value substantially in excess of its carrying value. No goodwill impairment charges were recognized during the year ended July&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Other Intangible and Long-Lived Assets &#x2014; &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;Intangible assets with definite lives are amortized on a straight-line basis over their estimated useful lives to reflect the pattern of economic benefits consumed. Intangible assets with indefinite lives as well as goodwill are not subject to amortization. These assets are assessed for impairment on an annual basis or more frequently if events or changes in circumstances have occurred that indicate the asset may not be recoverable or that the remaining estimated useful life may warrant revision. In addition, the Company performs qualitative assessments on a quarterly basis of significant events and circumstances, such as historical and current results, assumptions regarding future performance, and strategic initiatives and overall economic factors.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company evaluates indefinite-lived intangible assets for impairment by comparing the estimated fair value of the asset to the carrying value. Fair value is estimated using the income approach based upon current sales projections applying the relief from royalty method. If the carrying value of the indefinite-lived intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess. The Company evaluates long-lived assets, including finite-lived intangible assets, operating lease assets, and property, plant, and equipment, for recoverability by comparing an estimate of undiscounted future cash flows, derived from internal forecasts, over the remaining life of the primary asset to the carrying amount of the asset group. To the extent the undiscounted future cash flows attributable to the asset are less than the carrying amount, an impairment loss is recognized for the amount by which the carrying value of the asset exceeds its fair value. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;In fiscal 2021, long-lived and other intangible assets were analyzed for potential impairment. As a result of the analysis, no impairment charges were recorded. &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;Refer to Note 3, "Other Intangible Assets and Long-Lived Assets" for further information regarding the impairment charges recorded in fiscal 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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; &#x2014; The Company accounts for leases in accordance with Accounting Standards Codification ("ASC") 842 "Leases," which was adopted on August 1, 2019 using the optional transition method. The Company determines whether an arrangement contains a lease at contract inception based on whether the arrangement provides the Company with the right to direct the use of and the right to obtain substantially all of the economic benefits from an identified asset in exchange for consideration. &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;The Company recognizes a right-of-use ("ROU") asset and lease liability for its lease commitments with initial terms greater than one year.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The initial measurement of ROU assets and lease liabilities are recognized at the lease commencement date based on the present value of future lease payments over the expected lease term. The ROU asset also includes any lease payments made on or before the commencement date, initial direct costs incurred, and is reduced by any lease incentives received. Some of the Company&#x2019;s leases include options to extend the lease agreement, of which the exercise is at the Company&#x2019;s sole discretion. The majority of renewal options are not included in the calculation of ROU assets and liabilities as they are not reasonably certain to be exercised. Some of the Company's lease agreements include rental payments that are adjusted periodically for inflation or the change in an index or rate. These variable lease payments are generally excluded from the initial measurement of the ROU asset and lease liability and are recognized in the period in which the obligation for those payments is incurred. The Company has lease agreements that include both lease and non-lease components, which the Company elected to account for as a single lease component.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company determines the present value of future lease payments using its incremental borrowing rate, as the discount rate implicit within the Company&#x2019;s leases generally cannot be readily determined. The incremental borrowing rate is estimated based on the sovereign credit rating for the countries in which the Company has its largest operations, adjusted for several factors, such as internal credit spread, lease terms, and other market information available at the lease commencement date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;As of July&#160;31, 2021, all leases are accounted for as operating leases, with lease expense being recognized on a straight-line basis over the lease term. Operating leases are reflected in &#x201c;Operating lease assets,&#x201d; &#x201c;Current operating lease liabilities,&#x201d; and &#x201c;Long-term operating lease liabilities&#x201d; in the accompanying Consolidated Balance Sheets. Operating lease expense is recognized in either cost of goods sold or selling, general, and administrative expenses in the Consolidated Statements of Income, based on the nature of the lease. ROU assets are evaluated for impairment in the same manner as long-lived assets. No impairment charges were recognized related to operating lease assets during the fiscal year ended July 31,&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; 2021.&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; Refer to Note 3, "Other Intangible and Long-Lived Assets" for additional information regarding the impairment charges recognized during fiscal 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Revenue Recognition &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The majority of the Company&#x2019;s revenue relates to the sale of identification solutions and workplace safety products to customers. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for revenue in accordance with ASC Topic 606 "Revenue from Contracts with Customers," which was adopted on August 1, 2018 using the modified retrospective approach. &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;Revenue is recognized when control of the product or service transfers to the customer in an amount that represents the consideration expected to be received in exchange for those products and services. The Company considers control to have transferred when legal title, physical possession, and the significant risks and rewards of ownership of the asset have transferred to the customer and the collection of the transaction price is reasonably assured, most of which occur upon shipment or delivery of goods to customers. Given the nature of the Company&#x2019;s business, revenue recognition practices do not contain estimates that materially affect the results of operations, with the exception of estimated customer returns and credit memos. The Company records an allowance for estimated product returns and credit memos using the expected value method based on historical experience, which is recognized as a deduction from net sales at the time of sale. As of July&#160;31, 2021 and 2020, the Company had a reserve for estimated product returns and credit memos of $5,510 and $6,295, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Sales Incentives &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company accounts for cash consideration (such as sales incentives, rebates, and cash discounts) given to its customers or resellers as a reduction of revenue. Sales incentives for the years ended July&#160;31, 2021, 2020, and 2019 were $38,876, $38,476, and $40,811, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Shipping and Handling Costs &#x2014;&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; Shipping and handling fees billed to a customer in a sale transaction are reported as net sales and the related costs incurred for shipping and handling are reported in cost of goods sold.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Advertising Costs &#x2014;&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; Advertising costs are expensed as incurred. Advertising expense for the years ended July&#160;31, 2021, 2020, and 2019 was $54,370, $63,482, and $62,454, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Stock-Based Compensation &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company measures and recognizes the compensation expense for all share-based awards made to employees and directors based on estimated grant-date fair values. The Black-Scholes option valuation model &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;is used to determine the fair value of stock option awards on the date of grant. The Company recognizes the compensation cost, net of estimated forfeitures, of all share-based awards on a straight-line basis over the vesting period of the award. If it is determined that it is unlikely the award will vest, the expense recognized to date for the award is reversed in the period in which this is evident and the remaining expense is not recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Black-Scholes model requires the use of assumptions which determine the fair value of stock-based awards. The Company uses historical data regarding stock option exercise behaviors to estimate the expected term of options granted based on the period of time that options granted are expected to be outstanding. Expected volatilities are based on the historical volatility of the Company&#x2019;s stock. The expected dividend yield is based on the Company&#x2019;s historical dividend payments and historical yield. The risk-free interest rate is based on the U.S. Treasury yield curve in effect on the grant date for the length of time corresponding to the expected term of the option. The market value is calculated as the average of the high and the low stock price on the date of the grant. Refer to No&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;te 7,&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; &#x201c;Stockholders' Equity&#x201d; for more information regarding the Company&#x2019;s incentive stock plans.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Research and Development &#x2014;&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; Amounts expended for research and development are expensed as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Other Comprehensive Income&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; &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;&#x2014;&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; Other comprehensive income consists of net unrealized gains and losses from cash flow hedges, the unamortized gain on defined-benefit pension plans net of their related tax effects, and foreign currency translation adjustments, which includes the impact of foreign currency translations and the settlements of net investment hedges. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Foreign Currency Translation &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The assets and liabilities of subsidiaries whose functional currency is a currency other than the U.S. dollar are translated into United States dollars at end of period rates of exchange, and income and expense accounts are translated at the average rates of exchange for the period. Resulting foreign currency translation adjustments are included in other comprehensive income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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 &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company accounts for income taxes under the asset and liability method in accordance with ASC 740 "Income Taxes." Under this method, deferred income tax assets and liabilities are recognized for the expected future tax consequences attributable to differences between the financial reporting and tax basis of assets and liabilities. Deferred tax assets and liabilities are measured using the currently enacted tax laws and rates applicable to the periods in which the differences are expected to be realized or settled. Valuation allowances are established when it is estimated that it is more likely than not that the tax benefit of the deferred tax asset will not be realized. The Company recognizes the benefit of income tax positions only if those positions are more likely than not to be sustained upon examination by the tax authority. Changes in recognition or measurement are reflected in the period in which a change in judgment occurs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Fair Value of Financial Instruments &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company believes that the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, and other current liabilities) approximate fair value due to the short-term nature of these instruments. Refer to Note 6, "Debt" for more information regarding the fair value of long-term debt and Note 13, "Fair Value Measurements" for information regarding fair value measurements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Foreign Currency Hedging &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The objective of the Company&#x2019;s foreign currency exchange risk management is to minimize the impact of currency movements on non-functional currency transactions and minimize the foreign currency translation impact on the Company&#x2019;s foreign operations. While the Company&#x2019;s risk management objectives and strategies are driven from an economic perspective, the Company attempts, where possible and practical, to ensure that the hedging strategies it engages in qualify for hedge accounting and result in accounting treatment where the earnings effect of the hedging instrument provides substantial offset (in the same period) to the income effect of the hedged item. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company recognizes derivative instruments as either assets or liabilities in the accompanying Consolidated Balance Sheets at fair value. Gains and losses resulting from changes in  fair value of the derivatives designated as hedges are recorded as a component of Accumulated Other Comprehensive Income ("AOCI") in the accompanying Consolidated Balance Sheets and in the Consolidated Statements of Comprehensive Income and are reclassified into the same income statement line item in the period or periods during which the hedged transaction affects income. Refer to Note 14, "Derivatives and Hedging Activities" for more information regarding the Company&#x2019;s derivative instruments and hedging activities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;New Accounting Standards &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Adopted Standards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments," which changes the impairment model for most financial instruments. Prior guidance required the recognition of credit losses based on an incurred loss impairment methodology that reflected losses once the losses were probable. Under ASU 2016-13, the Company is required to use a current expected credit loss model ("CECL") that immediately recognizes an estimate of credit losses that are expected to occur over the life of the financial instruments that are in the scope of this update, including trade receivables. The Company adopted ASU 2016-13 effective August 1, 2020, which did not have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In January 2017, the FASB issued ASU 2017-04, "Goodwill and Other, Simplifying the Test for Goodwill Impairment." This guidance removes Step 2 of the goodwill impairment test, which required a hypothetical purchase price allocation. A goodwill impairment is now the amount by which a reporting unit&#x2019;s carrying value exceeds its fair value, not to exceed the carrying amount of goodwill. All other goodwill impairment guidance remains largely unchanged. The Company adopted ASC 2017-04 effective August 1, 2020. This guidance only impacts the Company's consolidated financial statements if there is a future impairment of goodwill.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Standards not yet adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In December 2019, the FASB issued ASU 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes (Topic 740)." The new guidance removes certain exceptions to the general principles in ASC 740 such as recognizing deferred taxes for equity investments, the incremental approach to performing intraperiod tax allocation and calculating income taxes in interim periods. The standard also simplifies accounting for income taxes under U.S. GAAP by clarifying and amending existing guidance, including the recognition of deferred taxes for goodwill, the allocation of taxes to members of a consolidated group and requiring that an entity reflect the effect of enacted changes in tax laws or rates in the annual effective tax rate computation in the interim period that includes the enactment date. This guidance is effective for annual periods beginning after Dec&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ember 15, 2020, and interim periods thereafter. Early adoption is permitted. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company does not expect a material impact to the financial statements or disclosures from the adoption of this standard.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In March 2020, the FASB issued ASU 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting." Subject to meeting certain criteria, the new guidance provides optional expedients and exceptions to applying contract modification accounting under existing U.S. GAAP, to address the expected phase out of the London Inter-bank Offered Rate ("LIBOR") by the end of 2021. This guidance was effective upon issuance and allows application to contract changes as early as January 1, 2020. Some of the Company's contracts with respect to its borrowing agreements already contain comparable alternative reference rates that would automatically take effect upon the phasing out of LIBOR. The Company does not expect a material impact to the financial statements or disclosures from the adoption of this standard.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:NatureOfOperations
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE3OTU_3a62f4bc-29a5-4349-8196-f749801c1dc0">&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;Nature of Operations &#x2014;&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; Brady Corporation is a global manufacturer and supplier of identification solutions and workplace safety products that identify and protect premises, products and people. The ability to provide customers with a broad range of proprietary, customized, and diverse products for use in various applications, along with a commitment to quality and service, a global footprint, and multiple sales channels, have made Brady a world leader in many of its markets.&lt;/span&gt;</us-gaap:NatureOfOperations>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE3OTY_6ab7a737-1eca-4f8a-bd25-e01f24279be3">Principles of Consolidation &#x2014; The accompanying consolidated financial statements include the accounts of Brady Corporation and its wholly owned subsidiaries. All intercompany accounts and transactions between consolidated subsidiaries have been eliminated in consolidation.</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE3OTc_7cfc7a47-97a8-430a-814c-2d90b3e73fa9">&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;Use of Estimates &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States ("U.S. GAAP"), which requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities as of the date of the consolidated financial statements, and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.&lt;/span&gt;</us-gaap:UseOfEstimates>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE3OTg_f3d648b3-1f4b-4ff9-962c-f83a3e31c666">&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;Acquisitions&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; &#x2014; The Company recognizes assets acquired, liabilities assumed, contractual contingencies and contingent consideration at their fair value on the acquisition date. The operating results of the acquired companies are included in the Company&#x2019;s consolidated financial statements from the date of acquisition. Acquisition-related costs are expensed as incurred and changes in deferred tax asset valuation allowances and income tax uncertainties after the measurement period are recorded in Provision for Income Taxes.&lt;/span&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE3OTk_c64b588f-557b-48b0-8bdd-285f3f93d98e">&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;Cash Equivalents &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company considers all highly-liquid investments purchased with original maturities of three months or less to be cash equivalents.&lt;/span&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDA_0eafff3c-c3a5-452e-95b5-e91d322c02e8">&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;Concentration of Credit Risk&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; &#x2014; The Company places temporary cash investments with global financial institutions of high credit quality. The Company performs periodic evaluations of the relative credit standing of its financial institutions and limits the amount of credit exposure with any one financial institution. In addition, the Company has a broad customer base representing many diverse industries throughout the globe. Consequently, no significant concentration of credit risk is considered to exist.&lt;/span&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDE_7163bd34-53d2-4575-8d30-ab297a670be1">Accounts Receivables &#x2014; The Company's policy for estimating the allowance for credit losses on accounts receivables considers several factors including historical loss experience, the age of delinquent receivable balances due, and economic conditions. Specific customer reserves are made during review of significant outstanding balances due, in which customer creditworthiness and current economic trends may indicate that it is probable the receivable will not be recovered. Accounts receivables are written off after collection efforts occur and the receivable is deemed uncollectible. Adjustments to the allowance for credit losses are recorded in SG&amp;amp;A expense.</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <us-gaap:EquityMethodInvestmentsPolicy
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDI_e4b37c69-23be-4261-b20d-8114c1cf1574">&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;Equity Method Investment &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The equity method of accounting is applied to investments in which the Company has an ownership interest of between 20% and 50%. The Company evaluates its equity method investments each reporting period for evidence of a loss in value that is other than a temporary decline. Evidence of a loss in value might include, but would not necessarily be limited to, absence of an ability to recover the carrying amount of the investment or the inability of the investee to sustain an earnings capacity that would justify the carrying amount of the investment. The Company performed this analysis and concluded that its investment in React Mobile, Inc. was other-than-temporarily impaired and recognized an impairment charge of $4,994 for the year ended July&#160;31, 2021.&lt;/span&gt;</us-gaap:EquityMethodInvestmentsPolicy>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDM_4b05b8a8-e57b-415d-a861-cf01ee5d2bd7">&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;Inventories &#x2014;&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; Inventories are stated at the lower of cost or net realizable value and include material, labor, and overhead. Cost has been determined using the last-in, first-out (&#x201c;LIFO&#x201d;) method for certain inventories in the U.S. (12.5% of total inventories at July&#160;31, 2021, and 14.7% of total inventories at July&#160;31, 2020) and the first-in, first-out (&#x201c;FIFO&#x201d;) or average cost methods for all other inventories. Had all inventories been accounted for on a FIFO basis instead of on a LIFO basis, the carrying value of inventories would have increased by $7,707 and $7,195 as of July&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;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;Inventories consist of the following as of July 31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:76.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.575%"/&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:9pt;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:9pt;font-weight:700;line-height:100%"&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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished products&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;87,489&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,547&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;font-weight:400;line-height:100%"&gt;24,044&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials and supplies&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:9pt;font-weight:400;line-height:100%"&gt;28,429&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;26,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;136,107&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;135,662&#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:InventoryPolicyTextBlock>
    <us-gaap:PercentageOfLIFOInventory
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzMwMTY_725b53d9-2cf5-43a9-b9fa-a655ac71f185"
      unitRef="number">0.125</us-gaap:PercentageOfLIFOInventory>
    <us-gaap:PercentageOfLIFOInventory
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzMwNTE_8e4656b3-8c24-4c93-9f9b-84fd40d8c1e6"
      unitRef="number">0.147</us-gaap:PercentageOfLIFOInventory>
    <us-gaap:InventoryLIFOReserveEffectOnIncomeNet
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzMzMDc_01032755-5873-4786-8a31-a73fdc2043ff"
      unitRef="usd">7707000</us-gaap:InventoryLIFOReserveEffectOnIncomeNet>
    <us-gaap:InventoryLIFOReserveEffectOnIncomeNet
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzMzMTQ_93854c68-6895-46af-8fda-608a3c4a612f"
      unitRef="usd">7195000</us-gaap:InventoryLIFOReserveEffectOnIncomeNet>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzI1ODYz_92421ddb-94d9-488c-b2bb-d8d302e53fb2">&lt;div style="margin-bottom:9pt;margin-top:9pt;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;Inventories consist of the following as of July 31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:76.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.575%"/&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:9pt;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:9pt;font-weight:700;line-height:100%"&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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished products&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;87,489&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,547&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;font-weight:400;line-height:100%"&gt;24,044&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials and supplies&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:9pt;font-weight:400;line-height:100%"&gt;28,429&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;26,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;136,107&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;135,662&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzEtMS0xLTEtMA_cb7cba46-08d2-455e-93ef-82f204213639"
      unitRef="usd">87489000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzEtMy0xLTEtMA_9218b0e0-c56c-4b56-92fa-b1101b8a102a"
      unitRef="usd">85547000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzItMS0xLTEtMA_d77f6864-417c-4c66-aecd-4ce3fecb8605"
      unitRef="usd">20189000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzItMy0xLTEtMA_16900da1-5296-4ea7-ad78-b13063e7c76d"
      unitRef="usd">24044000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzMtMS0xLTEtMA_4a75cdfd-3cb5-4bd4-afc2-0ae793cecb4b"
      unitRef="usd">28429000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzMtMy0xLTEtMA_b13ada57-2b55-4707-a55d-d4ab353d3aae"
      unitRef="usd">26071000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzQtMS0xLTEtMA_77acbb0e-8abb-45ec-8ebc-cc1f3f1be754"
      unitRef="usd">136107000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo2MjQ4YTE2ZjEzZjI0MjUxOGQyZGE1ZDlhOTExMmY4OS90YWJsZXJhbmdlOjYyNDhhMTZmMTNmMjQyNTE4ZDJkYTVkOWE5MTEyZjg5XzQtMy0xLTEtMA_6c63590f-7dd5-4ab6-a0c4-557578e10487"
      unitRef="usd">135662000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDQ_54282ebb-ab15-47da-a8bf-e028d7db0041">&lt;div style="text-align:justify;text-indent:18pt"&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;Property, Plant and Equipment &#x2014;&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; Property, plant and equipment are stated at cost, less accumulated depreciation. Depreciation is computed primarily on a straight-line basis over the estimated useful lives of the related assets. Leasehold improvements are depreciated over the shorter of the lease term or the estimated useful life of the respective asset. The estimated useful lives range from 3 to 33 years as shown below.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Property, plant and equipment consist of the following as of July 31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.478%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;Range of Useful Lives&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:9pt;font-weight:700;line-height:100%"&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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,201&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buildings and improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10&#160;to&#160;33&#160;Years&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:9pt;font-weight:400;line-height:100%"&gt;108,801&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;105,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&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:9pt;font-weight:400;line-height:100%"&gt;3 to 10 Years&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:9pt;font-weight:400;line-height:100%"&gt;276,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;267,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Construction in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,991&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;8,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&#x2014;gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:400;line-height:100%"&gt;398,987&#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:9pt;font-weight:400;line-height:100%"&gt;391,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(277,246)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(276,248)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&#x2014;net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;121,741&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;115,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;Depreciation expense was $18,406, $18,218, and $18,023 for the years ended July&#160;31, 2021, 2020 and 2019, respectively.</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzI1ODY3_2ba45884-2bc6-492b-9c32-fdffebf2504e">&lt;div style="margin-top:9pt;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;Property, plant and equipment consist of the following as of July 31:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.478%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;Range of Useful Lives&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:9pt;font-weight:700;line-height:100%"&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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,201&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buildings and improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10&#160;to&#160;33&#160;Years&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:9pt;font-weight:400;line-height:100%"&gt;108,801&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;105,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&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:9pt;font-weight:400;line-height:100%"&gt;3 to 10 Years&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:9pt;font-weight:400;line-height:100%"&gt;276,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;267,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Construction in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,991&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;8,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&#x2014;gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:400;line-height:100%"&gt;398,987&#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:9pt;font-weight:400;line-height:100%"&gt;391,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(277,246)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(276,248)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&#x2014;net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;121,741&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;115,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:Land
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzEtMy0xLTEtMA_f1f7264f-bfd3-49f3-91ea-ac0c78644825"
      unitRef="usd">8201000</us-gaap:Land>
    <us-gaap:Land
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzEtNS0xLTEtMA_8075c80c-afab-4cfe-8585-a254a6a8d8cc"
      unitRef="usd">9960000</us-gaap:Land>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzItMy0xLTEtMA_0ae19e32-c0e8-400d-8987-368f98525b3d"
      unitRef="usd">108801000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzItNS0xLTEtMA_bca58a20-2a78-46a4-8fa5-1c26eb6c9ab8"
      unitRef="usd">105129000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzMtMy0xLTEtMA_f76b8b26-c31b-4297-9a6a-295063ddb768"
      unitRef="usd">276994000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzMtNS0xLTEtMA_a5031c59-ba57-4073-a2f7-c5030f3a9e24"
      unitRef="usd">267795000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzQtMy0xLTEtMA_567e8c93-8ac9-401f-afef-285da31900aa"
      unitRef="usd">4991000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzQtNS0xLTEtMA_541a3d81-ce1a-407b-9aa4-619e8282c093"
      unitRef="usd">8432000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzUtMy0xLTEtMA_1997f3ea-8191-4198-a478-b316fa5ffa07"
      unitRef="usd">398987000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzUtNS0xLTEtMA_2fc1216c-460b-4d65-9706-febcff451404"
      unitRef="usd">391316000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzYtMy0xLTEtMA_df61f395-c2e0-4e8c-8d7d-35494e4fc06c"
      unitRef="usd">277246000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzYtNS0xLTEtMA_b48b9ca2-abb4-413b-b0fb-99884d3e43d8"
      unitRef="usd">276248000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzctMy0xLTEtMA_9e695a55-b9b0-4671-a32d-68757718681f"
      unitRef="usd">121741000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90YWJsZTo4YjI5MzlmNzZmMTE0NTEzODZlMTQzYWE3MmVmMmU3OC90YWJsZXJhbmdlOjhiMjkzOWY3NmYxMTQ1MTM4NmUxNDNhYTcyZWYyZTc4XzctNS0xLTEtMA_aadc7755-1d35-4207-a22d-46ee6947222b"
      unitRef="usd">115068000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzM5MjU_8b89c1a8-b173-4e81-958b-a6e6ba7d4d05"
      unitRef="usd">18406000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzM5Mjk_be7db974-eb6c-4bcf-80ef-7274f114e4c2"
      unitRef="usd">18218000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzM5Mzc_788f76b6-9ae2-4539-8d6b-e9eb9a39fe25"
      unitRef="usd">18023000</us-gaap:Depreciation>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDY_eb917444-fe59-4f45-a024-ef85dbdae09d">&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill  &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company evaluates the carrying amount of goodwill annually or more frequently if events or changes in circumstances have occurred that indicate the goodwill might be impaired. The Company completes impairment reviews for its reporting units using a fair-value method based on management's judgments and assumptions. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When performing its annual impairment assessment, the Company evaluates the recoverability of goodwill assigned to each of its reporting units by comparing the estimated fair value of the respective reporting unit to the carrying value, including goodwill. The Company estimates fair value utilizing the income approach and the market approach. The income approach requires management to make a number of assumptions and estimates for each reporting unit, including projected future operating results, economic projections, anticipated future cash flows, working capital levels, income tax rates, and a weighted-average cost of capital reflecting the specific risk profile of the respective reporting unit. The market approach estimates fair value using performance multiples of comparable publicly-traded compa&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;nies. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the event the fair value of a reporting unit is less than the carrying value, including goodwill, &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;an impairment loss, if any, is recognized for the difference between the implied fair value and the carrying value of the reporting unit's goodwill. The annual impairment testing performed on May 1, 2021, indicated that all reporting units with remaining goodwill had a fair value substantially in excess of its carrying value. No goodwill impairment charges were recognized during the year ended July&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Other Intangible and Long-Lived Assets &#x2014; &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;Intangible assets with definite lives are amortized on a straight-line basis over their estimated useful lives to reflect the pattern of economic benefits consumed. Intangible assets with indefinite lives as well as goodwill are not subject to amortization. These assets are assessed for impairment on an annual basis or more frequently if events or changes in circumstances have occurred that indicate the asset may not be recoverable or that the remaining estimated useful life may warrant revision. In addition, the Company performs qualitative assessments on a quarterly basis of significant events and circumstances, such as historical and current results, assumptions regarding future performance, and strategic initiatives and overall economic factors.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company evaluates indefinite-lived intangible assets for impairment by comparing the estimated fair value of the asset to the carrying value. Fair value is estimated using the income approach based upon current sales projections applying the relief from royalty method. If the carrying value of the indefinite-lived intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess. The Company evaluates long-lived assets, including finite-lived intangible assets, operating lease assets, and property, plant, and equipment, for recoverability by comparing an estimate of undiscounted future cash flows, derived from internal forecasts, over the remaining life of the primary asset to the carrying amount of the asset group. To the extent the undiscounted future cash flows attributable to the asset are less than the carrying amount, an impairment loss is recognized for the amount by which the carrying value of the asset exceeds its fair value. &lt;/span&gt;&lt;/div&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In fiscal 2021, long-lived and other intangible assets were analyzed for potential impairment. As a result of the analysis, no impairment charges were recorded. &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;Refer to Note 3, "Other Intangible Assets and Long-Lived Assets" for further information regarding the impairment charges recorded in fiscal 2020.&lt;/span&gt;</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDc_abe0d9b1-6016-4ca6-96a7-caed1cf5bffb">&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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; &#x2014; The Company accounts for leases in accordance with Accounting Standards Codification ("ASC") 842 "Leases," which was adopted on August 1, 2019 using the optional transition method. The Company determines whether an arrangement contains a lease at contract inception based on whether the arrangement provides the Company with the right to direct the use of and the right to obtain substantially all of the economic benefits from an identified asset in exchange for consideration. &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;The Company recognizes a right-of-use ("ROU") asset and lease liability for its lease commitments with initial terms greater than one year.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The initial measurement of ROU assets and lease liabilities are recognized at the lease commencement date based on the present value of future lease payments over the expected lease term. The ROU asset also includes any lease payments made on or before the commencement date, initial direct costs incurred, and is reduced by any lease incentives received. Some of the Company&#x2019;s leases include options to extend the lease agreement, of which the exercise is at the Company&#x2019;s sole discretion. The majority of renewal options are not included in the calculation of ROU assets and liabilities as they are not reasonably certain to be exercised. Some of the Company's lease agreements include rental payments that are adjusted periodically for inflation or the change in an index or rate. These variable lease payments are generally excluded from the initial measurement of the ROU asset and lease liability and are recognized in the period in which the obligation for those payments is incurred. The Company has lease agreements that include both lease and non-lease components, which the Company elected to account for as a single lease component.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company determines the present value of future lease payments using its incremental borrowing rate, as the discount rate implicit within the Company&#x2019;s leases generally cannot be readily determined. The incremental borrowing rate is estimated based on the sovereign credit rating for the countries in which the Company has its largest operations, adjusted for several factors, such as internal credit spread, lease terms, and other market information available at the lease commencement date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;As of July&#160;31, 2021, all leases are accounted for as operating leases, with lease expense being recognized on a straight-line basis over the lease term. Operating leases are reflected in &#x201c;Operating lease assets,&#x201d; &#x201c;Current operating lease liabilities,&#x201d; and &#x201c;Long-term operating lease liabilities&#x201d; in the accompanying Consolidated Balance Sheets. Operating lease expense is recognized in either cost of goods sold or selling, general, and administrative expenses in the Consolidated Statements of Income, based on the nature of the lease. ROU assets are evaluated for impairment in the same manner as long-lived assets. No impairment charges were recognized related to operating lease assets during the fiscal year ended July 31,&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; 2021.&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; Refer to Note 3, "Other Intangible and Long-Lived Assets" for additional information regarding the impairment charges recognized during fiscal 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MDg_d9a851e3-d87c-46b0-a0c8-805b4291dd9f">&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Revenue Recognition &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The majority of the Company&#x2019;s revenue relates to the sale of identification solutions and workplace safety products to customers. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for revenue in accordance with ASC Topic 606 "Revenue from Contracts with Customers," which was adopted on August 1, 2018 using the modified retrospective approach. &lt;/span&gt;Revenue is recognized when control of the product or service transfers to the customer in an amount that represents the consideration expected to be received in exchange for those products and services. The Company considers control to have transferred when legal title, physical possession, and the significant risks and rewards of ownership of the asset have transferred to the customer and the collection of the transaction price is reasonably assured, most of which occur upon shipment or delivery of goods to customers. Given the nature of the Company&#x2019;s business, revenue recognition practices do not contain estimates that materially affect the results of operations, with the exception of estimated customer returns and credit memos. The Company records an allowance for estimated product returns and credit memos using the expected value method based on historical experience, which is recognized as a deduction from net sales at the time of sale. As of July&#160;31, 2021 and 2020, the Company had a reserve for estimated product returns and credit memos of $5,510 and $6,295, respectively.</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ContractWithCustomerRefundLiability
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEyNTQ1_b6f89f7a-d397-4f17-9e46-9eb7b4b27e1f"
      unitRef="usd">5510000</us-gaap:ContractWithCustomerRefundLiability>
    <us-gaap:ContractWithCustomerRefundLiability
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEyNTUy_aa65b167-fe53-441c-b011-a781dcbe8cd8"
      unitRef="usd">6295000</us-gaap:ContractWithCustomerRefundLiability>
    <us-gaap:SalesCommissionsAndFees
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEyODEw_a072b391-0eec-4906-8a67-cfd42bd53717"
      unitRef="usd">38876000</us-gaap:SalesCommissionsAndFees>
    <us-gaap:SalesCommissionsAndFees
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEyODE0_b6ce2c47-4f3b-45eb-aade-3e9e4bdb6975"
      unitRef="usd">38476000</us-gaap:SalesCommissionsAndFees>
    <us-gaap:SalesCommissionsAndFees
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEyODIy_1e3bb2a1-b0be-4451-8e09-2a46986b8cd8"
      unitRef="usd">40811000</us-gaap:SalesCommissionsAndFees>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTE_72a94f7c-8be4-4ce9-ac79-4525256d8326">&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;Advertising Costs &#x2014;&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; Advertising costs are expensed as incurred. Advertising expense for the years ended July&#160;31, 2021, 2020, and 2019 was $54,370, $63,482, and $62,454, respectively.&lt;/span&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEzMTgz_cb1e3a6b-9ef3-4ad0-96c3-e17028961ad6"
      unitRef="usd">54370000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEzMTg3_150ce0e3-3e0a-404a-9514-2700b44c3c91"
      unitRef="usd">63482000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEzMTk1_ed692782-a5c0-43af-8543-19b62b355979"
      unitRef="usd">62454000</us-gaap:AdvertisingExpense>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTI_f0965e82-c9d2-4592-9e21-c74c45cc1914">&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;Stock-Based Compensation &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company measures and recognizes the compensation expense for all share-based awards made to employees and directors based on estimated grant-date fair values. The Black-Scholes option valuation model &lt;/span&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;is used to determine the fair value of stock option awards on the date of grant. The Company recognizes the compensation cost, net of estimated forfeitures, of all share-based awards on a straight-line basis over the vesting period of the award. If it is determined that it is unlikely the award will vest, the expense recognized to date for the award is reversed in the period in which this is evident and the remaining expense is not recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Black-Scholes model requires the use of assumptions which determine the fair value of stock-based awards. The Company uses historical data regarding stock option exercise behaviors to estimate the expected term of options granted based on the period of time that options granted are expected to be outstanding. Expected volatilities are based on the historical volatility of the Company&#x2019;s stock. The expected dividend yield is based on the Company&#x2019;s historical dividend payments and historical yield. The risk-free interest rate is based on the U.S. Treasury yield curve in effect on the grant date for the length of time corresponding to the expected term of the option. The market value is calculated as the average of the high and the low stock price on the date of the grant. Refer to No&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;te 7,&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; &#x201c;Stockholders' Equity&#x201d; for more information regarding the Company&#x2019;s incentive stock plans.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTM_eaead4eb-f64c-47d7-98db-4ec6454c4774">&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;Research and Development &#x2014;&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; Amounts expended for research and development are expensed as incurred.&lt;/span&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTQ_ce333149-b579-4b0a-94ca-b2c521bf8f31">&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Other Comprehensive Income&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; &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;&#x2014;&lt;/span&gt; Other comprehensive income consists of net unrealized gains and losses from cash flow hedges, the unamortized gain on defined-benefit pension plans net of their related tax effects, and foreign currency translation adjustments, which includes the impact of foreign currency translations and the settlements of net investment hedges.</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTU_2e7a6d4d-482e-47c1-ae66-961defae9bf2">&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;Foreign Currency Translation &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The assets and liabilities of subsidiaries whose functional currency is a currency other than the U.S. dollar are translated into United States dollars at end of period rates of exchange, and income and expense accounts are translated at the average rates of exchange for the period. Resulting foreign currency translation adjustments are included in other comprehensive income.&lt;/span&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTY_5863482f-1ae3-4cdb-8ba3-734b67c1a17f">&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 &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company accounts for income taxes under the asset and liability method in accordance with ASC 740 "Income Taxes." Under this method, deferred income tax assets and liabilities are recognized for the expected future tax consequences attributable to differences between the financial reporting and tax basis of assets and liabilities. Deferred tax assets and liabilities are measured using the currently enacted tax laws and rates applicable to the periods in which the differences are expected to be realized or settled. Valuation allowances are established when it is estimated that it is more likely than not that the tax benefit of the deferred tax asset will not be realized. The Company recognizes the benefit of income tax positions only if those positions are more likely than not to be sustained upon examination by the tax authority. Changes in recognition or measurement are reflected in the period in which a change in judgment occurs.&lt;/span&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTc_26ef446d-9bbc-494e-8069-b355c75f6798">&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;Fair Value of Financial Instruments &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company believes that the carrying amount of its financial instruments (cash and cash equivalents, accounts receivable, accounts payable, and other current liabilities) approximate fair value due to the short-term nature of these instruments. Refer to Note 6, "Debt" for more information regarding the fair value of long-term debt and Note 13, "Fair Value Measurements" for information regarding fair value measurements.&lt;/span&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:DerivativesPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MTg_7d0c5eb9-e91b-483c-a2f5-9c805572d28b">&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Foreign Currency Hedging &#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The objective of the Company&#x2019;s foreign currency exchange risk management is to minimize the impact of currency movements on non-functional currency transactions and minimize the foreign currency translation impact on the Company&#x2019;s foreign operations. While the Company&#x2019;s risk management objectives and strategies are driven from an economic perspective, the Company attempts, where possible and practical, to ensure that the hedging strategies it engages in qualify for hedge accounting and result in accounting treatment where the earnings effect of the hedging instrument provides substantial offset (in the same period) to the income effect of the hedged item. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company recognizes derivative instruments as either assets or liabilities in the accompanying Consolidated Balance Sheets at fair value. Gains and losses resulting from changes in  fair value of the derivatives designated as hedges are recorded as a component of Accumulated Other Comprehensive Income ("AOCI") in the accompanying Consolidated Balance Sheets and in the Consolidated Statements of Comprehensive Income and are reclassified into the same income statement line item in the period or periods during which the hedged transaction affects income. Refer to Note 14, "Derivatives and Hedging Activities" for more information regarding the Company&#x2019;s derivative instruments and hedging activities.&lt;/span&gt;&lt;/div&gt;</us-gaap:DerivativesPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTIvZnJhZzo3YzgyZWRlYWJhY2U0ZWZlODZhNjFlMmQ4ODE3MDQ5Yi90ZXh0cmVnaW9uOjdjODJlZGVhYmFjZTRlZmU4NmE2MWUyZDg4MTcwNDliXzEwOTk1MTE2NzE4MjU_220eb274-a6a0-41fb-a404-e5577a1f32dd">&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;New Accounting Standards &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Adopted Standards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In June 2016, the FASB issued ASU 2016-13, "Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments," which changes the impairment model for most financial instruments. Prior guidance required the recognition of credit losses based on an incurred loss impairment methodology that reflected losses once the losses were probable. Under ASU 2016-13, the Company is required to use a current expected credit loss model ("CECL") that immediately recognizes an estimate of credit losses that are expected to occur over the life of the financial instruments that are in the scope of this update, including trade receivables. The Company adopted ASU 2016-13 effective August 1, 2020, which did not have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In January 2017, the FASB issued ASU 2017-04, "Goodwill and Other, Simplifying the Test for Goodwill Impairment." This guidance removes Step 2 of the goodwill impairment test, which required a hypothetical purchase price allocation. A goodwill impairment is now the amount by which a reporting unit&#x2019;s carrying value exceeds its fair value, not to exceed the carrying amount of goodwill. All other goodwill impairment guidance remains largely unchanged. The Company adopted ASC 2017-04 effective August 1, 2020. This guidance only impacts the Company's consolidated financial statements if there is a future impairment of goodwill.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Standards not yet adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In December 2019, the FASB issued ASU 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes (Topic 740)." The new guidance removes certain exceptions to the general principles in ASC 740 such as recognizing deferred taxes for equity investments, the incremental approach to performing intraperiod tax allocation and calculating income taxes in interim periods. The standard also simplifies accounting for income taxes under U.S. GAAP by clarifying and amending existing guidance, including the recognition of deferred taxes for goodwill, the allocation of taxes to members of a consolidated group and requiring that an entity reflect the effect of enacted changes in tax laws or rates in the annual effective tax rate computation in the interim period that includes the enactment date. This guidance is effective for annual periods beginning after Dec&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ember 15, 2020, and interim periods thereafter. Early adoption is permitted. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company does not expect a material impact to the financial statements or disclosures from the adoption of this standard.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In March 2020, the FASB issued ASU 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting." Subject to meeting certain criteria, the new guidance provides optional expedients and exceptions to applying contract modification accounting under existing U.S. GAAP, to address the expected phase out of the London Inter-bank Offered Rate ("LIBOR") by the end of 2021. This guidance was effective upon issuance and allows application to contract changes as early as January 1, 2020. Some of the Company's contracts with respect to its borrowing agreements already contain comparable alternative reference rates that would automatically take effect upon the phasing out of LIBOR. The Company does not expect a material impact to the financial statements or disclosures from the adoption of this standard.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzQ5NA_17f3c422-902d-44d6-a0b3-31b85e4b23c6">Goodwill&lt;div style="margin-top:5pt;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;Changes in the carrying amount of goodwill by reportable segment for the years ended July&#160;31, 2021 and 2020, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.429%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;IDS&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:9pt;font-weight:700;line-height:100%"&gt;WPS&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;379,005&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;31,982&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;410,987&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,342&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;382,347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;416,034&#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 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current year acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;195,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #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:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #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:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;195,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #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:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustments&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:9pt;font-weight:400;line-height:100%"&gt;1,422&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,515&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;578,935&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;35,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;614,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Goodwill increased $198,103 for the year ended July&#160;31, 2021. Of the $198,103 increase, $139,347 was due to the acquisition of Code, $43,235 was due to the acquisition of Magicard, $12,584 was due to the acquisition of Nordic ID, and $2,937 was due to the positive effects of foreign currency translation.&lt;/span&gt;&lt;/div&gt;The annual impairment testing performed on May 1, 2021, in accordance with ASC 350, &#x201c;Intangibles - Goodwill and Other&#x201d; indicated that all of the reporting units with goodwill remaining (IDS Americas &amp;amp; Europe, PDC, and WPS Europe) had a fair value substantially in excess of its carrying value.</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzQ5MQ_381619b8-3a5a-47bc-ae2e-e8cece5f538b">&lt;div style="margin-top:5pt;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;Changes in the carrying amount of goodwill by reportable segment for the years ended July&#160;31, 2021 and 2020, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.429%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;IDS&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:9pt;font-weight:700;line-height:100%"&gt;WPS&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;379,005&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;31,982&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;410,987&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,342&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;382,347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,687&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;416,034&#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 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current year acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;195,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #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:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #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:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;195,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #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:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Translation adjustments&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:9pt;font-weight:400;line-height:100%"&gt;1,422&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,515&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;578,935&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;35,202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;614,137&#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:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="i700c3a0dc63149d28d295faf29f02702_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzEtMS0xLTEtMA_d060b3fb-0f62-45c8-b160-c805a86db1a7"
      unitRef="usd">379005000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i95bde3217b6c48f9b8044b7b3d8a4616_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzEtMy0xLTEtMA_89a75ebb-1408-4575-82ac-aafd68ca60bd"
      unitRef="usd">31982000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzEtNS0xLTEtMA_d29ab579-59ab-4039-ad7b-cade1a513a6a"
      unitRef="usd">410987000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzItMS0xLTEtMA_5c13780f-ae9b-4994-b16d-5a87972b7c01"
      unitRef="usd">3342000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzItMy0xLTEtMA_24b3358f-4a87-4e73-b3ad-4feae1dbad1d"
      unitRef="usd">1705000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzItNS0xLTEtMA_7267f837-7b7e-4df5-bc52-140734f30b67"
      unitRef="usd">5047000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="iba972ab712814a66aaa831b7d1e67c97_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzMtMS0xLTEtMA_cc5da37a-3c23-4aea-8a00-dc612034d5e0"
      unitRef="usd">382347000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id84b8a60ccfc4632b8fc4718336a9b5d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzMtMy0xLTEtMA_856de48f-6859-40eb-a4ed-23d0ea14f50d"
      unitRef="usd">33687000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzMtNS0xLTEtMA_d4ee2b8d-e073-42bc-bf54-57ae98918416"
      unitRef="usd">416034000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i80924641c60441549e9a07b7f446ace9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzQtMS0xLTEtNjYwMQ_8c2a3db6-56af-4014-8bd9-9d760b9cb0d5"
      unitRef="usd">195166000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzQtMy0xLTEtNjYwOA_152536ea-03b0-4e69-932d-cd42b78368c2"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzQtNS0xLTEtNjYxMQ_dd5ec5ef-f68c-42da-a077-59570847546a"
      unitRef="usd">195166000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i80924641c60441549e9a07b7f446ace9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzQtMS0xLTEtMA_764a2ffd-4e6c-426a-bc82-e3a56c12ae80"
      unitRef="usd">1422000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzQtMy0xLTEtMA_6974b5fc-7773-4c1d-b74e-d4d264d77fad"
      unitRef="usd">1515000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzQtNS0xLTEtMA_97981062-cdd5-4880-b10a-1b5facd15d15"
      unitRef="usd">2937000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i4f131f162a9d4e75b00c4762519da8a4_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzUtMS0xLTEtMA_38497ba0-f5c9-4ece-b5d7-ec4918ff3b01"
      unitRef="usd">578935000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ib20a45fb2bc548029c192b8add302c21_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzUtMy0xLTEtMA_7fa1b337-b5fb-42c8-b61a-9048fe1b1f3e"
      unitRef="usd">35202000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90YWJsZTo0ZDIyZTY1MWUyMGU0YzMzYjE1M2ZiMTQxZDAyZjk5My90YWJsZXJhbmdlOjRkMjJlNjUxZTIwZTRjMzNiMTUzZmIxNDFkMDJmOTkzXzUtNS0xLTEtMA_d1b1e6d0-0651-45a4-8ae7-9d43399497ab"
      unitRef="usd">614137000</us-gaap:Goodwill>
    <us-gaap:GoodwillPeriodIncreaseDecrease
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzEwOTk1MTE2MjgzMzA_99aac3f2-0035-4cd9-b653-50f8396bf88a"
      unitRef="usd">198103000</us-gaap:GoodwillPeriodIncreaseDecrease>
    <us-gaap:GoodwillPeriodIncreaseDecrease
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzEwOTk1MTE2MjgzNzI_99aac3f2-0035-4cd9-b653-50f8396bf88a"
      unitRef="usd">198103000</us-gaap:GoodwillPeriodIncreaseDecrease>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib195d4841e9a400698be604f57ceca5f_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzEwOTk1MTE2Mjg1OTM_474950de-779a-4338-b804-d4e260f46f78"
      unitRef="usd">139347000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib7437006003c4301ba43d440bc1493de_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzEwOTk1MTE2Mjg1Njk_ea835454-054e-46a1-8041-8a65f8832888"
      unitRef="usd">43235000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib5d6dd6193bd4c309ab950e0557c3d2d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzEwOTk1MTE2Mjg1ODE_c21487a3-09b7-42cf-99e1-db61e36917c0"
      unitRef="usd">12584000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMTgvZnJhZzo5MGZkZTQ4NzJlYTU0N2FmOTZlMjY4YjQ1ZGRkYTM2My90ZXh0cmVnaW9uOjkwZmRlNDg3MmVhNTQ3YWY5NmUyNjhiNDVkZGRhMzYzXzEwOTk1MTE2Mjg2NDI_97981062-cdd5-4880-b10a-1b5facd15d15"
      unitRef="usd">2937000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzMyNjI_0b32bba6-9e2e-4a80-942a-9ab99d42b5ea">Other Intangible and Long-Lived Assets&lt;div style="margin-top:9pt;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;Other intangible assets include customer relationships, tradenames, and technology with finite lives being amortized in accordance with the accounting guidance for other intangible assets. The Company also has unamortized indefinite-lived tradenames that are classified as other intangible assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Other intangible assets as of July&#160;31, 2021 and 2020, consisted of the following:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.531%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.197%"/&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="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 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 #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Amortization Period (Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Book Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Amortization Period (Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Book 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortized other intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;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:8pt;font-weight:400;line-height:100%"&gt;1,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td 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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;(356)&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;1,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;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:8pt;font-weight:400;line-height:100%"&gt;663&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;(55)&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer relationships&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:8pt;font-weight:400;line-height:100%"&gt;9&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:8pt;font-weight:400;line-height:100%"&gt;110,950&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(39,069)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;71,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9&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:8pt;font-weight:400;line-height:100%"&gt;44,722&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(32,615)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;12,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&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:8pt;font-weight:400;line-height:100%"&gt;9,578&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(335)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;9,243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unamortized other intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;font-weight:400;line-height:100%"&gt;9,745&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;9,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;font-weight:400;line-height:100%"&gt;9,619&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;9,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;132,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(39,760)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;92,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;55,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The change in the gross carrying amount of other intangible assets as of July&#160;31, 2021 compared to July&#160;31, 2020 was primarily due the acquisitions of Code, Magicard, and Nordic ID completed during the year ended July&#160;31, 2021 and to a lesser extent, the effect of currency fluctuations. Refer to Note 15, "Acquisitions" for additional information on intangible assets acquired.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Amortization expense on intangible assets during the fiscal years ended July 31, 2021, 2020, and 2019 was $7,077, $5,219, and $5,776, respectively. Amortization expense over each of the next five fiscal years is projected to be $15,160, $12,208, $9,739, $9,414, and $8,529 for the fiscal years ending July&#160;31, 2022, 2023, 2024, 2025, and 2026, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;During the year ended July 31, 2020, impairment charges of $8,665 were recognized related to indefinite-lived tradenames. In addition, impairment charges of $2,681 were recognized related to property, plant and equipment; of which $2,353 and $328 related to the IDS and WPS segments, respectively. Impairment charges of $2,475 were recognized related to operating lease assets, of which $2,035 and $440 related to the WPS and IDS segments, respectively. These items resulted in a total impairment charge of $13,821 recognized in "Impairment charges" on the Consolidated Statements of Income for the fiscal year ended July 31, 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzMyNjI_c4d9a4fa-3a47-4ec8-afb8-57580367b961">Other Intangible and Long-Lived Assets&lt;div style="margin-top:9pt;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;Other intangible assets include customer relationships, tradenames, and technology with finite lives being amortized in accordance with the accounting guidance for other intangible assets. The Company also has unamortized indefinite-lived tradenames that are classified as other intangible assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Other intangible assets as of July&#160;31, 2021 and 2020, consisted of the following:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.531%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.197%"/&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="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 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 #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Amortization Period (Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Book Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Amortization Period (Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Book 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortized other intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;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:8pt;font-weight:400;line-height:100%"&gt;1,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td 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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;(356)&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;1,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;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:8pt;font-weight:400;line-height:100%"&gt;663&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;(55)&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer relationships&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:8pt;font-weight:400;line-height:100%"&gt;9&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:8pt;font-weight:400;line-height:100%"&gt;110,950&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(39,069)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;71,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9&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:8pt;font-weight:400;line-height:100%"&gt;44,722&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(32,615)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;12,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&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:8pt;font-weight:400;line-height:100%"&gt;9,578&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(335)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;9,243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unamortized other intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;font-weight:400;line-height:100%"&gt;9,745&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;9,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;font-weight:400;line-height:100%"&gt;9,619&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;9,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;132,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(39,760)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;92,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;55,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The change in the gross carrying amount of other intangible assets as of July&#160;31, 2021 compared to July&#160;31, 2020 was primarily due the acquisitions of Code, Magicard, and Nordic ID completed during the year ended July&#160;31, 2021 and to a lesser extent, the effect of currency fluctuations. Refer to Note 15, "Acquisitions" for additional information on intangible assets acquired.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Amortization expense on intangible assets during the fiscal years ended July 31, 2021, 2020, and 2019 was $7,077, $5,219, and $5,776, respectively. Amortization expense over each of the next five fiscal years is projected to be $15,160, $12,208, $9,739, $9,414, and $8,529 for the fiscal years ending July&#160;31, 2022, 2023, 2024, 2025, and 2026, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;During the year ended July 31, 2020, impairment charges of $8,665 were recognized related to indefinite-lived tradenames. In addition, impairment charges of $2,681 were recognized related to property, plant and equipment; of which $2,353 and $328 related to the IDS and WPS segments, respectively. Impairment charges of $2,475 were recognized related to operating lease assets, of which $2,035 and $440 related to the WPS and IDS segments, respectively. These items resulted in a total impairment charge of $13,821 recognized in "Impairment charges" on the Consolidated Statements of Income for the fiscal year ended July 31, 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzMyNjM_7849a283-4e18-40e1-ba21-d8f2964179a1">&lt;div style="margin-top:9pt;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;Other intangible assets as of July&#160;31, 2021 and 2020, consisted of the following:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.531%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.197%"/&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="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 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 #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Amortization Period (Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Book Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Amortization Period (Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Gross Carrying Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Net Book 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Amortized other intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;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:8pt;font-weight:400;line-height:100%"&gt;1,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td 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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;(356)&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;1,465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;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:8pt;font-weight:400;line-height:100%"&gt;663&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;(55)&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Customer relationships&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:8pt;font-weight:400;line-height:100%"&gt;9&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:8pt;font-weight:400;line-height:100%"&gt;110,950&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(39,069)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;71,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;9&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:8pt;font-weight:400;line-height:100%"&gt;44,722&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(32,615)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;12,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;5&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:8pt;font-weight:400;line-height:100%"&gt;9,578&#160;&lt;/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:8pt;font-weight:400;line-height:100%"&gt;(335)&lt;/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:8pt;font-weight:400;line-height:100%"&gt;9,243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Unamortized other intangible assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;font-weight:400;line-height:100%"&gt;9,745&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;9,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;N/A&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:8pt;font-weight:400;line-height:100%"&gt;9,619&#160;&lt;/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:8pt;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:8pt;font-weight:400;line-height:100%"&gt;9,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;132,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(39,760)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;92,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;55,004&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(32,670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;22,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNTg4NTQ_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i8b33e6e25b4d437ab9612c66af670684_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtMS0xLTEtMA_68ac1ba3-9b2c-426f-bb78-fdb262045c13">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i5f4f51fd0ac3418cb2aa0fadfba983aa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtMy0xLTEtMA_a843a844-2d0f-4b89-825f-17c6d5c20ae2"
      unitRef="usd">1821000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i5f4f51fd0ac3418cb2aa0fadfba983aa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtNS0xLTEtMA_8c90779c-3214-4496-b2b1-68ebc619c509"
      unitRef="usd">-356000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i5f4f51fd0ac3418cb2aa0fadfba983aa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtNy0xLTEtMA_afa8d33f-f8cf-4c12-94fb-0bae3c0c3c27"
      unitRef="usd">1465000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ia1f315b6f5444adabc77b5be92f989d8_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtOS0xLTEtMA_c23edf0d-809e-4fdd-8593-8a7f8af8bb31">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ic5f75ccdefef4d71866305bf426f95a1_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtMTEtMS0xLTA_6cfcdbd0-6e98-43ee-9e13-94bc730649fc"
      unitRef="usd">663000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ic5f75ccdefef4d71866305bf426f95a1_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtMTMtMS0xLTA_17542d47-f73f-404f-b966-ca045b0ce832"
      unitRef="usd">-55000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ic5f75ccdefef4d71866305bf426f95a1_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzMtMTUtMS0xLTA_7e32307a-6e79-462a-b717-506d42148625"
      unitRef="usd">608000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i4c15ea2d0cd74f9e8ce7f4d6e206922d_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtMS0xLTEtNjg3Ng_f05db9b6-f2c5-45bf-a82a-fd89ef9f7a7b">P9Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iaac6b65990f44054a1a450d6fbc7d64d_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtMy0xLTEtNjg3Ng_f0e20cf3-9ea4-49f2-8b13-a8f94938f9e3"
      unitRef="usd">110950000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iaac6b65990f44054a1a450d6fbc7d64d_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtNS0xLTEtNjg3Ng_e71b585e-b1f6-409e-b07e-2d226ce9fabb"
      unitRef="usd">-39069000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="iaac6b65990f44054a1a450d6fbc7d64d_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtNy0xLTEtNjg3Ng_bdf86223-05e9-48a5-9039-44817e62b25f"
      unitRef="usd">71881000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i1fab405b410d487ba5cdcd1a5770804f_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtOS0xLTEtNjg2NA_a1636b0c-c585-4e89-aa3f-08fc1edec794">P9Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="if8eea90582e340bd99aee3c1c64ae0ac_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtMTEtMS0xLTY4NjQ_54d558c0-002c-4c4e-aa5e-3bc1f7d4240a"
      unitRef="usd">44722000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="if8eea90582e340bd99aee3c1c64ae0ac_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtMTMtMS0xLTY4NjQ_f84dd305-04e2-45eb-b23e-166fbc7708d3"
      unitRef="usd">-32615000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="if8eea90582e340bd99aee3c1c64ae0ac_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzQtMTUtMS0xLTY4NjQ_df416b56-e8a3-4c50-8720-7e3c7c14339c"
      unitRef="usd">12107000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i3ab201b1217a447da572b9f38381887e_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMS0xLTEtNjg3Ng_0943249f-d4e9-4f05-a84d-b78120b49ea3">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3b1dd80807434f4a825bc165645fa49c_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMy0xLTEtNjg3Ng_4d3afbd9-94f9-4981-9224-654e817f8a5e"
      unitRef="usd">9578000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i3b1dd80807434f4a825bc165645fa49c_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtNS0xLTEtNjg3Ng_adfd761d-22ce-4384-a57b-1f5e523cd27e"
      unitRef="usd">-335000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i3b1dd80807434f4a825bc165645fa49c_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtNy0xLTEtNjg3Ng_cb90d0e9-fc4b-4b0f-9866-aa4376e9ba8f"
      unitRef="usd">9243000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ibb2e19906c0f49cfb5e02254110abb06_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMTEtMS0xLTgzOTk_a95620a2-c45b-493d-b355-6bc6d707bd13"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ibb2e19906c0f49cfb5e02254110abb06_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMTMtMS0xLTgzOTk_31bb8bef-4f83-4978-af71-7a2e4848b045"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ibb2e19906c0f49cfb5e02254110abb06_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMTUtMS0xLTgzOTk_be9ab957-4e94-4ac0-a844-2067b90138c3"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMy0xLTEtMA_a52db449-cdd5-4721-88b2-f47540caf672"
      unitRef="usd">9745000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtNy0xLTEtMA_a6810de0-f5e1-4471-abe4-5c7830c7279d"
      unitRef="usd">9745000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMTEtMS0xLTA_a52b1e24-ddea-4464-bc01-572a44901927"
      unitRef="usd">9619000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzUtMTUtMS0xLTA_13c52efc-db03-45fd-b055-a7d25deba617"
      unitRef="usd">9619000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzYtMy0xLTEtMA_e32e1196-3fa3-4fb8-8fee-d4bbef3b059d"
      unitRef="usd">132094000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzYtNS0xLTEtMA_e18365a3-5c0e-4d47-9d6c-e16faa524feb"
      unitRef="usd">-39760000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzYtNy0xLTEtMA_a17cdeea-06ba-4672-88d8-7cfdd3bb0460"
      unitRef="usd">92334000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzYtMTEtMS0xLTA_1b1bd433-1dbe-410c-981c-cf387e43c771"
      unitRef="usd">55004000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzYtMTMtMS0xLTA_75007429-5c47-4474-bb1a-f4a556ae3a4a"
      unitRef="usd">-32670000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90YWJsZTo4YWUyNDA0NDk2NDk0OTNkOWU4MDJiYmI5Nzc1MTVjYi90YWJsZXJhbmdlOjhhZTI0MDQ0OTY0OTQ5M2Q5ZTgwMmJiYjk3NzUxNWNiXzYtMTUtMS0xLTA_c45adeff-8ac8-49a7-b248-686658e162b1"
      unitRef="usd">22334000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNTkyODE_70e416ee-1808-43e6-9bf4-81a185eec02f"
      unitRef="usd">7077000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNTkyODY_0f24773d-03a5-4d34-86d4-04eb7ecada9b"
      unitRef="usd">5219000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNTkyOTU_aaf32af0-7461-44d7-812c-50d605711462"
      unitRef="usd">5776000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNTkzOTQ_9aff957c-a603-4d25-aab0-17d045aa3017"
      unitRef="usd">15160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNTkzOTk_25767c25-e174-4794-826a-f82bac1b62ea"
      unitRef="usd">12208000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzEwOTk1MTE2MzQyNDE_8fc525ee-6201-49e9-9694-5094a2688700"
      unitRef="usd">9739000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzEwOTk1MTE2MzQyNDY_a43e48f7-6a9e-4666-99e4-2d9361003cad"
      unitRef="usd">9414000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzEwOTk1MTE2MzQyNTU_b49f060d-9beb-4c77-8d8d-282b212dea82"
      unitRef="usd">8529000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTkwMjMyNjA3MzE_e4d22300-80d4-4f88-8afa-187cacd4395f"
      unitRef="usd">8665000</us-gaap:ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill>
    <us-gaap:TangibleAssetImpairmentCharges
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIxOTE_a7a18b42-b56d-4c5f-95e1-389b20d9f16b"
      unitRef="usd">2681000</us-gaap:TangibleAssetImpairmentCharges>
    <us-gaap:TangibleAssetImpairmentCharges
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIyNjE_cb76e82b-b297-445a-b0e7-bed6600955d2"
      unitRef="usd">2353000</us-gaap:TangibleAssetImpairmentCharges>
    <us-gaap:TangibleAssetImpairmentCharges
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIyNjg_f2c88892-a0d7-4d6c-bfa4-aa9e2cd96749"
      unitRef="usd">328000</us-gaap:TangibleAssetImpairmentCharges>
    <us-gaap:OperatingLeaseImpairmentLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzIzNTc_ea79f4b0-0baa-4db2-8491-7272bafc5c54"
      unitRef="usd">2475000</us-gaap:OperatingLeaseImpairmentLoss>
    <us-gaap:OperatingLeaseImpairmentLoss
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzI0MjA_7ef2a0ff-0232-47e7-b2c1-1fff0846271a"
      unitRef="usd">2035000</us-gaap:OperatingLeaseImpairmentLoss>
    <us-gaap:OperatingLeaseImpairmentLoss
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzI0Mjc_90e74ea8-3c1d-4a9f-8b67-808fd6b92bd9"
      unitRef="usd">440000</us-gaap:OperatingLeaseImpairmentLoss>
    <us-gaap:AssetImpairmentCharges
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjEvZnJhZzo4ZjI1YzMzMGFjNDU0NWEwOWIwMTFhYWY1NzE3MTFlNC90ZXh0cmVnaW9uOjhmMjVjMzMwYWM0NTQ1YTA5YjAxMWFhZjU3MTcxMWU0XzI1MzQ_1fe75b54-0714-47f0-9d3b-8f6eac162ecf"
      unitRef="usd">13821000</us-gaap:AssetImpairmentCharges>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzE1NzM_4154e8f1-5c1e-47dc-8062-9ec3c3358b53">Leases&lt;div style="margin-top:9pt;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;The Company leases certain manufacturing facilities, warehouses and office space, computer equipment, and vehicles accounted for as operating leases. Lease terms typically range from one year to ten years. As of July&#160;31, 2021 and 2020, the Company did not have any finance leases.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company evaluates right-of-use assets for impairment in the same manner as long-lived assets. Refer to Note 3, "Other Intangible and Long-Lived Assets" for information regarding impairment charges recognized during the fiscal year ended July 31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Short-term lease expense, variable lease expenses, and sublease income were immaterial to the Consolidated Statements of Income for the fiscal year ended July&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table summarizes lease expense recognized for the fiscal years ended July&#160;31, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.625%"/&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:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:700;line-height:100%"&gt;Consolidated Statements of Income Location&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:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of goods sold&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,268&#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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,197&#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="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative expenses&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;8,625&#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:9pt;font-weight:400;line-height:100%"&gt;8,974&#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;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Lease expense of $19,984 was recognized in operating expenses for the year ended July&#160;31, 2019.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table summarizes the maturity of the Company's lease liabilities as of July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Years ending July 31, &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:9pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,865&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;15,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total lease payments&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;48,173&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: 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:9pt;font-weight:400;line-height:100%"&gt;(2,159)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The weighted average remaining lease terms and discount rates for the Company's operating leases as of July&#160;31, 2021 and 2020 were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.5&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&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:9pt;font-weight:400;line-height:100%"&gt;3.3&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3.5&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:18pt"&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;Supplemental cash flow information related to the Company's operating leases for the fiscal years July&#160;31, 2021 and &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2020&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:700;line-height:100%"&gt;Twelve months ended July 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,123&#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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease assets obtained in exchange for new operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,522&#160;&lt;/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:9pt;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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Operating lease assets obtained in exchange for new operating lease liabilities include $9,769 of operating lease assets related to leases that commenced on August 1, 2019, which were included in the adoption impact of the new lease accounting standard.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company evaluates right-of-use assets for impairment in the same manner as long-lived assets. No impairment charges were recorded during the year ended July&#160;31, 2021. Refer to Note 3, "Other Intangible and Long-Lived Assets" for information regarding impairment charges recognized during the year ended July 31, 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzE1NzQ_9c88ad91-bf37-4b2b-aa62-5e86948dd21d">The following table summarizes lease expense recognized for the fiscal years ended July&#160;31, 2021 and 2020:&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:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.625%"/&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:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:700;line-height:100%"&gt;Consolidated Statements of Income Location&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:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of goods sold&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,268&#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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,197&#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="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative expenses&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;8,625&#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:9pt;font-weight:400;line-height:100%"&gt;8,974&#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;/table&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="ia803c143845e48088d5315166349e6f2_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo2YzE4ZWE4ODVmNTc0NjE3ODgxMTdhNTdmM2Y0MGI2Ni90YWJsZXJhbmdlOjZjMThlYTg4NWY1NzQ2MTc4ODExN2E1N2YzZjQwYjY2XzEtMy0xLTEtMTgwMQ_087f93cf-3611-4caf-a675-5319966be1df"
      unitRef="usd">8268000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="iac5b81ab6ef84ba89c9eb8a4a88c6391_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo2YzE4ZWE4ODVmNTc0NjE3ODgxMTdhNTdmM2Y0MGI2Ni90YWJsZXJhbmdlOjZjMThlYTg4NWY1NzQ2MTc4ODExN2E1N2YzZjQwYjY2XzEtMy0xLTEtMA_27fc3288-e042-493f-ad74-55fac6eba11f"
      unitRef="usd">9197000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i6b7248bb2e1c43b48370dc464d77ccb1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo2YzE4ZWE4ODVmNTc0NjE3ODgxMTdhNTdmM2Y0MGI2Ni90YWJsZXJhbmdlOjZjMThlYTg4NWY1NzQ2MTc4ODExN2E1N2YzZjQwYjY2XzItMy0xLTEtMTgwMQ_7e54d6e2-4cf0-472d-9be9-53c05e8ccb74"
      unitRef="usd">8625000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i860e607bb6994bb9859608772d83ded7_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo2YzE4ZWE4ODVmNTc0NjE3ODgxMTdhNTdmM2Y0MGI2Ni90YWJsZXJhbmdlOjZjMThlYTg4NWY1NzQ2MTc4ODExN2E1N2YzZjQwYjY2XzItMy0xLTEtMA_68dda3f1-4503-4ad7-9f2c-d25e75bfeadd"
      unitRef="usd">8974000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzc5OA_6358aa90-ddfb-476b-9b30-6f98dcc434da"
      unitRef="usd">19984000</us-gaap:OperatingLeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzE1NzU_8d87c35e-e86f-4334-b100-5839f9d1e68b">&lt;div style="margin-top:9pt;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;The following table summarizes the maturity of the Company's lease liabilities as of July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Years ending July 31, &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:9pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,865&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;15,286&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total lease payments&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;48,173&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: 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:9pt;font-weight:400;line-height:100%"&gt;(2,159)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzEtMS0xLTEtMA_40e862d5-5106-49be-abfd-e8dd783dd3b2"
      unitRef="usd">18865000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzItMS0xLTEtMA_d4b0b47f-94d6-449a-9c6f-8701ce41beb1"
      unitRef="usd">15286000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzMtMS0xLTEtMA_13aae343-549f-49d3-8ff0-31a9622ff762"
      unitRef="usd">8445000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzQtMS0xLTEtMA_7b9ec3a8-c78a-4325-beaf-a64cfa445320"
      unitRef="usd">3750000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzUtMS0xLTEtMA_9ca0eaee-5498-4983-bc90-0aa98ea79c6c"
      unitRef="usd">1602000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzYtMS0xLTEtMA_7621f5e5-3e7a-48c5-8289-cc0a672c04d1"
      unitRef="usd">225000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzctMS0xLTEtMA_35fedac4-7f40-4e1f-9ad9-854f3e971cf4"
      unitRef="usd">48173000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzgtMS0xLTEtMA_87e9476e-b2f3-491e-8c5e-02ab524d9d0b"
      unitRef="usd">2159000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTo1YWJkNGQ3ZGVlNjk0OTNmODZmNDYzNTcyZTJlMjZjMi90YWJsZXJhbmdlOjVhYmQ0ZDdkZWU2OTQ5M2Y4NmY0NjM1NzJlMmUyNmMyXzktMS0xLTEtMA_0ccb7956-0a04-4921-81a4-007c31b68753"
      unitRef="usd">46014000</us-gaap:OperatingLeaseLiability>
    <brc:WeightedAverageLeaseDisclosuresTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzE1Nzc_9b1ed384-ceac-48c8-84d4-05b5d215d4d8">&lt;div style="margin-top:9pt;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;The weighted average remaining lease terms and discount rates for the Company's operating leases as of July&#160;31, 2021 and 2020 were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.5&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&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:9pt;font-weight:400;line-height:100%"&gt;3.3&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3.5&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</brc:WeightedAverageLeaseDisclosuresTableTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTpiZGJjMTdjOGI3MWY0OGM2YmE0ZDkwYTRlMGRmYTcyMS90YWJsZXJhbmdlOmJkYmMxN2M4YjcxZjQ4YzZiYTRkOTBhNGUwZGZhNzIxXzEtMS0xLTEtMTg1OQ_ab24d84a-799d-4429-ae96-b07662ee1410">P3Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTpiZGJjMTdjOGI3MWY0OGM2YmE0ZDkwYTRlMGRmYTcyMS90YWJsZXJhbmdlOmJkYmMxN2M4YjcxZjQ4YzZiYTRkOTBhNGUwZGZhNzIxXzEtMS0xLTEtMA_85a960d4-8894-44c2-be48-5c274d5c8515">P3Y6M</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTpiZGJjMTdjOGI3MWY0OGM2YmE0ZDkwYTRlMGRmYTcyMS90YWJsZXJhbmdlOmJkYmMxN2M4YjcxZjQ4YzZiYTRkOTBhNGUwZGZhNzIxXzItMS0xLTEtMTg1OQ_1f7461f0-33ec-42f1-8a13-43472a7f5bf9"
      unitRef="rate">0.033</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZTpiZGJjMTdjOGI3MWY0OGM2YmE0ZDkwYTRlMGRmYTcyMS90YWJsZXJhbmdlOmJkYmMxN2M4YjcxZjQ4YzZiYTRkOTBhNGUwZGZhNzIxXzItMS0xLTEtMA_72f64969-28db-450f-b7bd-2695b85787e3"
      unitRef="rate">0.035</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <brc:SupplementalCashFlowInformationLeasesTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzEwOTk1MTE2MzAzMjY_e8395933-e522-4529-be32-63f299890a6f">&lt;div style="margin-top:9pt;text-indent:18pt"&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;Supplemental cash flow information related to the Company's operating leases for the fiscal years July&#160;31, 2021 and &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2020&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:700;line-height:100%"&gt;Twelve months ended July 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,123&#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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease assets obtained in exchange for new operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,522&#160;&lt;/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:9pt;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;/tr&gt;&lt;/table&gt;&lt;/div&gt;</brc:SupplementalCashFlowInformationLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZToyYjkyYmZiN2FjNmQ0OTU5YmI5NTdkZTI4YTc2MzNjZS90YWJsZXJhbmdlOjJiOTJiZmI3YWM2ZDQ5NTliYjk1N2RlMjhhNzYzM2NlXzItMS0xLTEtMTk4NQ_945a4dea-3385-417c-b86d-31e4d8a68a5e"
      unitRef="usd">18334000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZToyYjkyYmZiN2FjNmQ0OTU5YmI5NTdkZTI4YTc2MzNjZS90YWJsZXJhbmdlOjJiOTJiZmI3YWM2ZDQ5NTliYjk1N2RlMjhhNzYzM2NlXzItMS0xLTEtMA_65466c42-d916-4ef3-a3e7-96e132e7dfd5"
      unitRef="usd">17123000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZToyYjkyYmZiN2FjNmQ0OTU5YmI5NTdkZTI4YTc2MzNjZS90YWJsZXJhbmdlOjJiOTJiZmI3YWM2ZDQ5NTliYjk1N2RlMjhhNzYzM2NlXzMtMS0xLTEtMTk4NQ_0b2f3c7e-c4a8-43ba-9ecc-59c2a8545133"
      unitRef="usd">16522000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90YWJsZToyYjkyYmZiN2FjNmQ0OTU5YmI5NTdkZTI4YTc2MzNjZS90YWJsZXJhbmdlOjJiOTJiZmI3YWM2ZDQ5NTliYjk1N2RlMjhhNzYzM2NlXzMtMS0xLTEtMA_7822b97d-4025-43c2-9056-711fa1e2526e"
      unitRef="usd">12641000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i084d7d8faeee4fc5bc760581a67d31e3_D20190801-20190801"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjQvZnJhZzpjYjBjZDczZGE1NzE0ZWE3OTdhNmY2ZmUyZGZhOGVlMC90ZXh0cmVnaW9uOmNiMGNkNzNkYTU3MTRlYTc5N2E2ZjZmZTJkZmE4ZWUwXzIxOTkwMjMyNTc5NTc_d68c19a0-7fd1-4519-8b74-9df93a2e2c0a"
      unitRef="usd">9769000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzI0NTY_5e40bb22-27e3-488e-8925-8f5ca8d9a9b7">Employee Benefit Plans&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company provides postretirement medical benefits (the &#x201c;Plan&#x201d;) for eligible regular full and part-time domestic employees (including spouses) who retired prior to January 1, 2016, as outlined by the Plan. The Plan is unfunded, and the liability, unrecognized &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;gain&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 associated income statement impact are immaterial. The liability is recorded in the accompanying Consolidated Balance Sheets as of July&#160;31, 2021 and 2020. The unrecognized &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;gain&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; is reported as a component of AOCI.&lt;/span&gt;&lt;div style="margin-top:9pt;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;The Company also has two deferred compensation plans, the Executive Deferred Compensation Plan and the Director Deferred Compensation Plan which allow for compensation to be deferred into either the Company's Class A Nonvoting Common Stock or in other investment funds. Neither plan allows funds to be transferred between the Company's Class A Nonvoting Common Stock and the other investment funds. The Company also has an additional non-qualified deferred compensation plan, the Brady Restoration Plan, which allows an equivalent benefit to the Matched 401(k) Plan and the Funded Retirement Plan for executives' income exceeding the IRS limits for participation in a qualified 401(k) plan. Deferred compensation of $20,144 and $18,606 was included in "Other liabilities" in the accompanying Consolidated Balance Sheets as of July&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company has retirement and profit-sharing plans covering substantially all full-time domestic employees and certain employees of its foreign subsidiaries. Contributions to the plans are determined annually or quarterly, according to the respective plan, based on income of the respective companies and employee contributions. Accrued retirement and profit-sharing contributions of $3,686 and $3,577 were included in "Other current liabilities" on the accompanying Consolidated Balance Sheets as of July&#160;31, 2021 and 2020, respectively. The amounts charged to expense for these retirement and profit sharing plans were $13,246, $12,129, and $14,158 during the years ended July&#160;31, 2021, 2020 and 2019, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DeferredCompensationArrangementWithIndividualRecordedLiability
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzE2NjM_11953625-b0d6-439d-a96c-2a54de6b6a9f"
      unitRef="usd">20144000</us-gaap:DeferredCompensationArrangementWithIndividualRecordedLiability>
    <us-gaap:DeferredCompensationArrangementWithIndividualRecordedLiability
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzE2NzA_da48fae6-1355-4284-a393-45549ad4d4ef"
      unitRef="usd">18606000</us-gaap:DeferredCompensationArrangementWithIndividualRecordedLiability>
    <brc:AccruedProfitSharingContributionsIncludedInOtherCurrentLiabilitiesAndOtherLongTermLiabilities
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzIxNzM_8bfa938b-97f3-4fcf-8d0b-1b002e209501"
      unitRef="usd">3686000</brc:AccruedProfitSharingContributionsIncludedInOtherCurrentLiabilitiesAndOtherLongTermLiabilities>
    <brc:AccruedProfitSharingContributionsIncludedInOtherCurrentLiabilitiesAndOtherLongTermLiabilities
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzIxODA_9f44ef1a-3721-4ee7-9ad5-782dedc7231b"
      unitRef="usd">3577000</brc:AccruedProfitSharingContributionsIncludedInOtherCurrentLiabilitiesAndOtherLongTermLiabilities>
    <us-gaap:PensionAndOtherPostretirementBenefitExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzIzODk_c7d2561e-6144-43d9-9da7-b96f78f4174a"
      unitRef="usd">13246000</us-gaap:PensionAndOtherPostretirementBenefitExpense>
    <us-gaap:PensionAndOtherPostretirementBenefitExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzIzOTM_8af252aa-1fc6-4ab4-a244-1074d7b0f16c"
      unitRef="usd">12129000</us-gaap:PensionAndOtherPostretirementBenefitExpense>
    <us-gaap:PensionAndOtherPostretirementBenefitExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMjcvZnJhZzowYmUyNWEyMmEzN2Y0MjZlYWVkNjJmMDcyNjRiOTFiYi90ZXh0cmVnaW9uOjBiZTI1YTIyYTM3ZjQyNmVhZWQ2MmYwNzI2NGI5MWJiXzI0MDE_e501906b-be6d-4f16-99c4-1ebafb18c49e"
      unitRef="usd">14158000</us-gaap:PensionAndOtherPostretirementBenefitExpense>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzMxMTc_392d8363-0ec9-46aa-9f1e-23d2e0a4fae3">Debt&lt;div style="margin-top:9pt;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;On August&#160;1, 2019, the Company and certain of its subsidiaries entered into an unsecured $200 million multi-currency revolving loan agreement with a group of five banks. Under this revolving loan agreement, the Company has the option to select either a Eurocurrency rate loan that bears interest at the LIBOR rate plus a margin based on the Company's consolidated net leverage ratio or a base interest rate (based upon the higher of the federal funds rate plus 0.5%, the prime rate of the Bank of Montreal plus a margin based on the Company&#x2019;s consolidated net leverage ratio, or the Eurocurrency base rate at the LIBOR rate plus a margin based on the Company&#x2019;s consolidated net leverage ratio plus 1%). At the Company's option, and subject to cer&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;tain conditions, the available amount under the revolving loan agreement may be increased from $200 million to $400 million. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;In June 2021, the Company drew down $75.0 million from its revolving loan agreement to fund a portion of the purchase price of the acquisition of Code. Prior to July&#160;31, 2021, the Company repaid $37.0 million of the borrowing with cash on hand. During the year ended July&#160;31, 2021, the maximum amount outstanding on the revolving loan agreement was $75.0 million. As of July&#160;31, 2021, the outstanding balance on the credit facility was $38.0 million and there was $159.1 million available for future borrowing under the credit facility, which can be increased to $359.1 million at the Company's option, subject to certain conditions. The revolving loan agreement has a final maturity date of August 1, 2024.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company&#x2019;s revolving loan agreement requires it to maintain certain financial covenants, including a ratio of debt to the trailing twelve months EBITDA, as defined in the agreement, of not more than a 3.5 to 1.0 ratio (leverage ratio) and the trailing twelve months EBITDA to interest expense of not less than a 3.0 to 1.0 ratio (interest expense coverage ratio). As of July 31, 2021, the Company was in compliance with these financial covenants, with a ratio of debt to EBITDA, as defined by the agreements, equal to 0.2 to 1.0 and the interest expense coverage ratio equal to 480.6 to 1.0.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;July&#160;31, 2021, borrowings on the revolving loan agreement were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;Interest Rate&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;USD-denominated borrowing on revolving loan agreement&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.84&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Due to the variable interest rate pricing of the Company's revolving debt, it is determined that the carrying value of the debt equals the fair value of the debt.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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 Company had outstanding letters of credit of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$2,901&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; and $3,116 at July&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5Xzg3NQ_ce3e3e0b-381f-4752-af82-52f0485efe0a"
      unitRef="usd">200000000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityInterestRateDescription
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzEwOTk1MTE2Mzg4MTg_73139494-0d2c-4081-ab27-3e78289d1153">Under this revolving loan agreement, the Company has the option to select either a Eurocurrency rate loan that bears interest at the LIBOR rate plus a margin based on the Company's consolidated net leverage ratio or a base interest rate (based upon the higher of the federal funds rate plus 0.5%, the prime rate of the Bank of Montreal plus a margin based on the Company&#x2019;s consolidated net leverage ratio, or the Eurocurrency base rate at the LIBOR rate plus a margin based on the Company&#x2019;s consolidated net leverage ratio plus 1%).</us-gaap:LineOfCreditFacilityInterestRateDescription>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzE3MjA_ce3e3e0b-381f-4752-af82-52f0485efe0a"
      unitRef="usd">200000000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzE3MjY_5290ccde-0c23-431e-841d-7daecad50e60"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <brc:RevolverAmountDrawnToFundCodeAcquisition
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzIxOTkwMjMyNjI3OTI_58a7f661-5078-4de0-84b0-76bceca36084"
      unitRef="usd">75000000</brc:RevolverAmountDrawnToFundCodeAcquisition>
    <brc:RevolverRepaidDuringYearRelatedToCodeAcquistion
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzIxOTkwMjMyNjI5MDA_162b7f88-dec2-40c5-a5fa-6d7ae4160e1b"
      unitRef="usd">37000000</brc:RevolverRepaidDuringYearRelatedToCodeAcquistion>
    <us-gaap:LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzIxOTkwMjMyNjUyOTQ_da244b38-c0a6-4ce1-a9ff-f614ed9895d9"
      unitRef="usd">75000000</us-gaap:LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod>
    <us-gaap:LineOfCredit
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzIxOTkwMjMyNjUzNzM_a6f4517c-2d94-41ae-b8c6-d1a876dc36e1"
      unitRef="usd">38000000</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzIxOTkwMjMyNjUzOTE_337e0029-5c40-4ea0-8810-0edb7de07899"
      unitRef="usd">159100000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <brc:LineOfCreditRemainingMaximumBorrowingCapacity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzIxOTkwMjMyNjU1NTE_53281baa-919c-4fef-bb2f-67bef043a273"
      unitRef="usd">359100000</brc:LineOfCreditRemainingMaximumBorrowingCapacity>
    <brc:DebtToEBITDARatio
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzEwOTk1MTE2Mzg4MzQ_5d171b6a-09f4-437a-9ff4-d68ac0d1988d">0.2 to 1.0</brc:DebtToEBITDARatio>
    <brc:InterestExpenseCoverageRatio
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzEwOTk1MTE2Mzg4MzU_f21cf2b8-26e7-4157-aa0c-4e6c0d46eec9">480.6 to 1.0</brc:InterestExpenseCoverageRatio>
    <us-gaap:ScheduleOfLineOfCreditFacilitiesTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzEwOTk1MTE2Mzg4MTQ_6a7d338e-d4b5-40a8-bf96-068dc1fd8b7b">&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;July&#160;31, 2021, borrowings on the revolving loan agreement were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;Interest Rate&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;USD-denominated borrowing on revolving loan agreement&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.84&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfLineOfCreditFacilitiesTextBlock>
    <us-gaap:LineOfCredit
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90YWJsZTpkZDg0OTE0ZDYwOGQ0ZjQ5YmUzOTYyYzdhNzg0NGU4YS90YWJsZXJhbmdlOmRkODQ5MTRkNjA4ZDRmNDliZTM5NjJjN2E3ODQ0ZThhXzEtMS0xLTEtMjI2Ng_482c3560-bca3-4df1-95ae-d02528905fbb"
      unitRef="usd">38000000</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90YWJsZTpkZDg0OTE0ZDYwOGQ0ZjQ5YmUzOTYyYzdhNzg0NGU4YS90YWJsZXJhbmdlOmRkODQ5MTRkNjA4ZDRmNDliZTM5NjJjN2E3ODQ0ZThhXzEtMy0xLTEtMjI3OQ_8125cd89-562c-4b68-93af-0db7b914d381"
      unitRef="number">0.0084</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzI4MDM_51334efe-c504-410c-b192-645f90548134"
      unitRef="usd">2901000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzAvZnJhZzpiODk0OWUwZDFhMjk0Mzg3Yjk4NTE2MDAxZjMyNWQ3OS90ZXh0cmVnaW9uOmI4OTQ5ZTBkMWEyOTQzODdiOTg1MTYwMDFmMzI1ZDc5XzI4MTA_87eab4dd-8201-45d6-a41b-e7cb44c9c7fc"
      unitRef="usd">3116000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0NDA_9bdc7928-8b97-4b41-ace6-9f3c14cca015">Stockholders' Equity&lt;div style="margin-top:9pt;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;Information as to the Company&#x2019;s capital stock at July&#160;31, 2021 and 2020 is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.018%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Authorized&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Issued&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:9pt;font-weight:700;line-height:100%"&gt;(thousands)&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Authorized&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Issued&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:9pt;font-weight:700;line-height:100%"&gt;(thousands)&lt;br/&gt;Amount&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Preferred Stock, $.01 par value&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:9pt;font-weight:400;line-height:100%"&gt;5,000,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:400;line-height:100%"&gt;5,000,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative Preferred Stock:    &lt;br/&gt;6% Cumulative&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;5,000&#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="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="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:9pt;font-weight:400;line-height:100%"&gt;5,000&#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="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1972 Series&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:9pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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:9pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1979 Series&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;30,000&#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="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="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:9pt;font-weight:400;line-height:100%"&gt;30,000&#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="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Common Stock, $.01 par value: Class&#160;A Nonvoting&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:9pt;font-weight:400;line-height:100%"&gt;100,000,000&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;51,261,487&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;513&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;100,000,000&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;51,261,487&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;513&#160;&lt;/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="padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Class B Voting&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;10,000,000&#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:9pt;font-weight:400;line-height:100%"&gt;3,538,628&#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:9pt;font-weight:400;line-height:100%"&gt;35&#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:9pt;font-weight:400;line-height:100%"&gt;10,000,000&#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:9pt;font-weight:400;line-height:100%"&gt;3,538,628&#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:9pt;font-weight:400;line-height:100%"&gt;35&#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:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;548&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;548&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Before any dividend may be paid on the Class B Common Stock, holders of the Class&#160;A Common Stock are entitled to receive an annual, noncumulative cash dividend of $0.01665 per share. Thereafter, any further dividend in that fiscal year must be paid on each share of Class&#160;A Common Stock and Class B Common Stock on an equal basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Other than as required by law, holders of the Class&#160;A Common Stock are not entitled to any vote on corporate matters, unless, in each of the three preceding fiscal years, the $0.01665 preferential dividend described above has not been paid in full. Holders of the Class&#160;A Common Stock are entitled to one vote per share for the entire fiscal year immediately following the third consecutive fiscal year in which the preferential dividend is not paid in full. Holders of Class B Common Stock are entitled to one vote per share for the election of directors and for all other purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Upon liquidation, dissolution or winding up of the Company, and after distribution of any amounts due to holders of Preferred Stock, if any, holders of the Class&#160;A Common Stock are entitled to receive the sum&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; of $0.833 per share before any payment or distribution to holders of the Class B Common Stock. Thereafter, holders of the Class B Common Stock are entitled to receive a payment or distribution of $0.833 per share. Thereafter, holders of the Class&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;&#160;A Common Stock and Class B Common Stock share equally in all payments or distributions upon liquidation, dissolution or winding up of the Company.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The preferences in dividends and liquidation rights of the Class&#160;A Common Stock over the Class B Common Stock will terminate at any time that the voting rights of Class&#160;A Common Stock and Class B Common Stock become equal.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following is a summary of other activity in stockholders&#x2019; equity for the fiscal years ended July&#160;31, 2021, 2020, and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:48.022%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.132%"/&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:9pt;font-weight:700;line-height:100%"&gt;Deferred Compensation&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:9pt;font-weight:700;line-height:100%"&gt;Shares&#160;Held in Rabbi Trust,&#160;at&#160;cost&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2018&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,222&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,222)&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:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2018&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;299,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;299,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of shares at cost&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(928)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Purchase of shares at cost&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:9pt;font-weight:400;line-height:100%"&gt;1,212&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,212)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,506)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 #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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2019&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;285,533&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;285,533&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of shares at cost&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(460)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Purchase of shares at cost&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:9pt;font-weight:400;line-height:100%"&gt;1,293&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,293)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,339&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(9,339)&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:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;292,329&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;292,329&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of shares at cost&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(277)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Purchase of shares at cost&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:9pt;font-weight:400;line-height:100%"&gt;1,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,472)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,534&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(10,534)&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:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2021&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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;315,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;315,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Deferred Compensation Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company has two deferred compensation plans, the Executive Deferred Compensation Plan and the Director Deferred Compensation Plan that allow for compensation to be deferred into either the Company's Class A Nonvoting Common Stock or into other investment funds. Neither plan allows funds to be transferred between the Company's Class A Nonvoting Common Stock and the other investment funds. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;At July&#160;31, 2021, the deferred compensation balance in stockholders&#x2019; equity represents the investment at the original cost of shares held in the Company&#x2019;s Class&#160;A Nonvoting Common Stock for the deferred compensation plans. The balance of shares held in the Rabbi Trust represents the investment in the Company&#x2019;s Class&#160;A Nonvoting Common Stock at the original cost of all the Company&#x2019;s Class&#160;A Nonvoting Common Stock held in deferred compensation plans.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Incentive Stock Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company has an incentive stock plan under which the Board of Directors may grant nonqualified stock options to purchase shares of Class&#160;A Nonvoting Common Stock, restricted stock units ("RSUs"), or restricted and unrestricted shares of Class&#160;A Nonvoting Common Stock to employees and non-employee directors. Certain awards may be subject to pre-established performance goals.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;As of July&#160;31, 2021, the Company has reserved 1,749,815 shares of Class&#160;A Nonvoting Common Stock for outstanding stock options and RSUs and 2,959,105 shares of Class&#160;A Nonvoting Common Stock remain for future issuance of stock options and restricted and unrestricted shares under the active plans. The Company uses treasury stock or will issue new Class&#160;A Nonvoting Common Stock to deliver shares under these plans.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Total stock-based compensation expense recognized by the Company during the years ended July&#160;31, 2021, 2020, and 2019, was $10,098 ($9,543 net of taxes), $8,843 ($8,048 net of taxes), and $12,092 ($10,628 net of taxes), respectively. As of July&#160;31, 2021, total unrecognized compensation cost related to share-based compensation awards that are expected to vest was $8,033 pre-tax, net of estimated forfeitures, which the Company expects to recognize over a weighted-average period of 1.4 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The stock options issued under the plan have an exercise price equal to the fair market value of the underlying stock at the date of grant and generally vest ratably over a &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQyMjU_1190bd3d-bd7d-47bb-bbed-1c76ed3c23be"&gt;three&lt;/span&gt;-year period, with one-third becoming exercisable one year after the grant date and one-third additional in each of the succeeding two years. Options issued under the plan, referred to herein as &#x201c;time-based&#x201d; options, generally expire 10 years from the date of grant. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company has estimated the fair value of its time-based stock option awards granted during the fiscal years ended July&#160;31, 2021, 2020, and 2019, using the Black-Scholes option valuation model. The weighted-average assumptions used in the Black-Scholes valuation model are reflected in the following table:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.993%"/&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:9pt;font-weight:700;line-height:100%"&gt;Black-Scholes Option Valuation Assumptions&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:9pt;font-weight:700;line-height:100%"&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:9pt;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="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.21&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.20&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.20&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected volatility&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:9pt;font-weight:400;line-height:100%"&gt;30.71&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;26.07&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;26.05&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&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:9pt;font-weight:400;line-height:100%"&gt;2.49&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.63&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&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:9pt;font-weight:400;line-height:100%"&gt;0.38&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.64&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3.01&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average market value of underlying stock at grant date&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;54.05&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;43.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average exercise price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;54.05&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;43.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average fair value of options granted during the period&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8.65&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10.63&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9.70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following is a summary of stock option activity for the fiscal year ended July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:44.861%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.214%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.214%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.965%"/&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:9pt;font-weight:700;line-height:100%"&gt;Time-Based Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Option Price&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:9pt;font-weight:700;line-height:100%"&gt;Options Outstanding&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:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19.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;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$54.05&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:9pt;font-weight:400;line-height:100%"&gt;1,273,382&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;37.84&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;New grants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39.92&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;303,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Exercised&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:9pt;font-weight:400;line-height:100%"&gt;19.96&#160;&lt;/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:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;54.05&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:9pt;font-weight:400;line-height:100%"&gt;(77,272)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;32.07&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited&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:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;54.05&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:9pt;font-weight:400;line-height:100%"&gt;(25,094)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;44.82&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19.96&#160;&lt;/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:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$54.05&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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,474,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;38.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The total fair value of options vested during the fiscal years ended July&#160;31, 2021, 2020, and 2019, was $2,371, $2,800, and $2,864, respectively. The total intrinsic value of options exercised during the fiscal years ended July&#160;31, 2021, 2020, and 2019, based upon the average market price at the time of the exercise during the period, was $1,477, $14,692, and $20,969, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;There were &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;949,668&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;, 776,273, and 1,025,811 options exercisable with a weighted average exercise price of &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$34.97&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;, $31.50, and $27.06 at July&#160;31, 2021, 2020, and 2019, respectively. The cash received from the exercise of stock options during the fiscal years ended July&#160;31, 2021, 2020, and 2019, was &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$1,765&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;, $5,511, and $23,466, respectively. The tax benefit on options exercised during the fiscal years ended July&#160;31, 2021, 2020, and 2019, was $369, $3,673, and $5,242, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table summarizes information about stock options outstanding at July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.643%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.466%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.198%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.466%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.466%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.198%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.471%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="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:8pt;font-weight:700;line-height:100%"&gt;Options Outstanding&lt;/span&gt;&lt;/td&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:8pt;font-weight:700;line-height:100%"&gt;Options&#160;Outstanding&#160;and Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Range of Exercise Prices&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Number&#160;of Shares Outstanding at July&#160;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-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted&#160; Average Remaining Contractual Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Exercisable at July&#160;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-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Contractual Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$19.96 - $29.99&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:9pt;font-weight:400;line-height:100%"&gt;217,913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20.87&#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:9pt;font-weight:400;line-height:100%"&gt;217,913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20.87&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$30.00 - $39.99&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:9pt;font-weight:400;line-height:100%"&gt;789,608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.6&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:9pt;font-weight:400;line-height:100%"&gt;37.05&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;501,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.2&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:9pt;font-weight:400;line-height:100%"&gt;35.40&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$40.00 - $54.05&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:9pt;font-weight:400;line-height:100%"&gt;466,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.7&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:9pt;font-weight:400;line-height:100%"&gt;49.02&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;229,758&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.5&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:9pt;font-weight:400;line-height:100%"&gt;47.39&#160;&lt;/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 19pt 2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,474,068&#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 colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;38.45&#160;&lt;/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;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;949,668&#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 colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.4&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;34.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:24.75pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="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;As of July&#160;31, 2021, the aggregate intrinsic value (defined as the amount by which the fair value of the underlying stock exceeds the exercise price of an option) of options outstanding and the options exercisable was $23,828 and $18,653, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;RSUs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;RSUs issued under the plan have a grant date fair value equal to the fair market value of the underlying stock at the date of grant. Shares issued under the plan are referred to herein as either "time-based" or "performance-based" RSUs. The time-based RSUs issued under the plan generally vest ratably over a &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzYxMzQ_868397e8-8acc-4c71-bc24-0d551f102867"&gt;three&lt;/span&gt;-year period, with one-third becoming exercisable one year after the grant date and one-third additional in each of the succeeding two years. The performance-based RSUs granted under the plan vest at the end of a three-year service period provided specified market conditions are met.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following tables summarize the RSU activity for the fiscal year ended July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:65.712%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.130%"/&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:9pt;font-weight:700;line-height:100%"&gt;Time-Based RSUs&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Grant Date&lt;br/&gt;&#160;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;154,960&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;47.39&#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:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;New grants&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:9pt;font-weight:400;line-height:100%"&gt;79,811&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;40.82&#160;&lt;/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:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(69,436)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;44.48&#160;&lt;/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:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited&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:9pt;font-weight:400;line-height:100%"&gt;(8,869)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;46.14&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 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 #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:9pt;font-weight:400;line-height:100%"&gt;156,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;45.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The time-based RSUs granted during the fiscal year ended July&#160;31, 2020 and 2019, had a weighted-average grant-date fair value of $53.38 and $44.20, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.712%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.130%"/&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:9pt;font-weight:700;line-height:100%"&gt;Performance-Based RSUs&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Grant Date&lt;br/&gt;&#160;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;126,060&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;50.61&#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:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;New grants &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;64,634&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;60.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(71,413)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;33.12&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;119,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;61.05&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt; Includes 23,805 shares resulting from the payout of performance-based RSUs granted in fiscal year 2018 due to the achievement of performance metrics exceeding the target payout.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The performance-based RSUs granted during the fiscal year ended July&#160;31, 2021, had a weighted-average grant-date fair value determined by a third-party valuation involving the use of a Monte Carlo simulation. The performance-based RSUs granted during the fiscal year ended July 31, 2020 and 2019, had a weighted-average grant-date fair value of $75.00 and $50.70, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The total fair value of time-based and performance-based RSUs vested during the years ended July&#160;31, 2021, 2020 and 2019, was $6,167, $9,776, and $9,859, respectively. The aggregate intrinsic value of unvested time-based and performance-based RSUs outstanding at July&#160;31, 2021, 2020, and 2019, and expected to vest, was &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$16,849,&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; $14,013, and $17,953, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:ScheduleOfStockByClassTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0Mjk_78258b16-d4b2-4399-8797-f87a0255bb08">&lt;div style="margin-top:9pt;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;Information as to the Company&#x2019;s capital stock at July&#160;31, 2021 and 2020 is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.018%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Authorized&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Issued&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:9pt;font-weight:700;line-height:100%"&gt;(thousands)&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Authorized&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;Issued&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:9pt;font-weight:700;line-height:100%"&gt;(thousands)&lt;br/&gt;Amount&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Preferred Stock, $.01 par value&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:9pt;font-weight:400;line-height:100%"&gt;5,000,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="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:9pt;font-weight:400;line-height:100%"&gt;5,000,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative Preferred Stock:    &lt;br/&gt;6% Cumulative&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;5,000&#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="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="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:9pt;font-weight:400;line-height:100%"&gt;5,000&#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="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1972 Series&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:9pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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:9pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1979 Series&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;30,000&#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="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="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:9pt;font-weight:400;line-height:100%"&gt;30,000&#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="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Common Stock, $.01 par value: Class&#160;A Nonvoting&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:9pt;font-weight:400;line-height:100%"&gt;100,000,000&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;51,261,487&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;513&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;100,000,000&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;51,261,487&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;513&#160;&lt;/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="padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Class B Voting&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;10,000,000&#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:9pt;font-weight:400;line-height:100%"&gt;3,538,628&#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:9pt;font-weight:400;line-height:100%"&gt;35&#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:9pt;font-weight:400;line-height:100%"&gt;10,000,000&#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:9pt;font-weight:400;line-height:100%"&gt;3,538,628&#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:9pt;font-weight:400;line-height:100%"&gt;35&#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:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;548&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;548&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfStockByClassTextBlock>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i22f2981acef44cb8b8f648f1f73f02e9_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzItMi0xLTEtMA_ace8e116-ddf1-4459-ba1c-5e33b01bc21a"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i587f9e66b75943978803b6fa7c91d782_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzItOC0xLTEtMA_b631a40c-74e4-4aed-b39d-95dfcb7fc8a8"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i87c0e88cbfa64ae09377c1ce0262cb34_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzMtMi0xLTEtMA_9f0788b7-5fe3-4d31-8463-984a6f0ca613"
      unitRef="shares">5000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="iec6638581cfb422fa1756c5cc3d167ac_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzMtOC0xLTEtMA_8a6ea411-5f18-4927-a211-dc1d2c6d014e"
      unitRef="shares">5000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i31e39eac75d04ec18ef9dabb46665dfd_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzQtMi0xLTEtMA_4908cde7-81ce-4438-b43f-64d84cbb6242"
      unitRef="shares">10000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ib85247f5da6d41d2b4d8150dac16e7dc_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzQtOC0xLTEtMA_d5f79f11-173b-48e6-8961-98191fa66622"
      unitRef="shares">10000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i19d37ff3cf7d4ef2937732f1a6a40420_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzUtMi0xLTEtMA_7dd43620-a57d-4963-a637-9ff3b866b8a9"
      unitRef="shares">30000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ib303ad46715e4ccbb1a1935b7a6efd08_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzUtOC0xLTEtMA_1e4d80ef-fc06-429b-9d12-29a1a0dfe8c4"
      unitRef="shares">30000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i5a04825c9f0a4f568164b247c8cc7ae1_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzYtMi0xLTEtMA_b59d5aa8-ed47-4812-934b-530f22fcacfa"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i5a04825c9f0a4f568164b247c8cc7ae1_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzYtNC0xLTEtMA_3b6bc591-8dc4-4ce5-bdf9-4658fa2123a3"
      unitRef="shares">51261487</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="i5a04825c9f0a4f568164b247c8cc7ae1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzYtNi0xLTEtMA_84d0eaa2-66b8-479b-8a17-76da864a0269"
      unitRef="usd">513000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i52073fe4f99d4a7899beb5accd892148_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzYtOC0xLTEtMA_43ab0941-2d93-4fbc-8f57-d16b0dde3b78"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i52073fe4f99d4a7899beb5accd892148_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzYtMTAtMS0xLTA_d39d45fb-f401-4852-a008-17ea1612cbe0"
      unitRef="shares">51261487</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="i52073fe4f99d4a7899beb5accd892148_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzYtMTItMS0xLTA_e5a80f21-8540-4242-bf85-18288381fad8"
      unitRef="usd">513000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i4f08013094aa40e3995bf4bb1f2b873d_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzctMi0xLTEtMA_db1fd94c-0990-4387-b8c3-3dd1102175a5"
      unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4f08013094aa40e3995bf4bb1f2b873d_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzctNC0xLTEtMA_3fa9ed76-d4c7-407b-b153-3c4ff138ca36"
      unitRef="shares">3538628</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="i4f08013094aa40e3995bf4bb1f2b873d_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzctNi0xLTEtMA_cf13cdb0-416d-46aa-b697-17676b18cc67"
      unitRef="usd">35000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="ie8b02ea92e9c472cbfa01b0b51c62560_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzctOC0xLTEtMA_e6d0cb7f-d0ef-4349-800e-904a620e8077"
      unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="ie8b02ea92e9c472cbfa01b0b51c62560_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzctMTAtMS0xLTA_ac8f1402-da88-4870-ab54-f40ad16e8f34"
      unitRef="shares">3538628</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="ie8b02ea92e9c472cbfa01b0b51c62560_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzctMTItMS0xLTA_87753003-5957-4ff2-8128-eefb6bff4df0"
      unitRef="usd">35000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzgtNi0xLTEtMA_69477fee-75f0-4625-bc6a-5502740e1331"
      unitRef="usd">548000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTplMmI5OGIwZTRiYTE0MzQwYTFlZDlkODZiMjc2OGNkYi90YWJsZXJhbmdlOmUyYjk4YjBlNGJhMTQzNDBhMWVkOWQ4NmIyNzY4Y2RiXzgtMTItMS0xLTA_aef54309-ad7e-4ea1-83b0-a9c2888fd05e"
      unitRef="usd">548000</us-gaap:CommonStockValue>
    <brc:NoncumulativeCashDividend
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzI2OQ_89eac03b-9bf0-4a74-b200-0f6f78a639e7"
      unitRef="usdPerShare">0.01665</brc:NoncumulativeCashDividend>
    <brc:NoncumulativeCashDividend
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzYwNg_14d1c0b6-be49-4082-917a-614ff4a56eda"
      unitRef="usdPerShare">0.01665</brc:NoncumulativeCashDividend>
    <brc:AmountEntitledToReceiveDueToCumulativePreferredStockHolders
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzEyMjE_877b10fd-60b5-4dd2-819e-5636a9923ae4"
      unitRef="usdPerShare">0.833</brc:AmountEntitledToReceiveDueToCumulativePreferredStockHolders>
    <brc:AmountEntitledToReceiveDueToCumulativePreferredStockHolders
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzE0MTA_c05863ad-e3d9-4ff6-b1a6-9cfb78431774"
      unitRef="usdPerShare">0.833</brc:AmountEntitledToReceiveDueToCumulativePreferredStockHolders>
    <us-gaap:ScheduleOfStockholdersEquityTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0MTc_44d62a3b-ea3e-4c92-ad53-1b394223a8ef">&lt;div style="margin-top:9pt;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;The following is a summary of other activity in stockholders&#x2019; equity for the fiscal years ended July&#160;31, 2021, 2020, and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:48.022%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.132%"/&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:9pt;font-weight:700;line-height:100%"&gt;Deferred Compensation&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:9pt;font-weight:700;line-height:100%"&gt;Shares&#160;Held in Rabbi Trust,&#160;at&#160;cost&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2018&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,222&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,222)&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:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2018&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;299,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;299,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of shares at cost&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(928)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Purchase of shares at cost&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:9pt;font-weight:400;line-height:100%"&gt;1,212&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,212)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,506)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 #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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2019&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;285,533&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;285,533&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of shares at cost&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(460)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Purchase of shares at cost&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:9pt;font-weight:400;line-height:100%"&gt;1,293&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,293)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,339&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(9,339)&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:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;292,329&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;292,329&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of shares at cost&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(277)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Purchase of shares at cost&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:9pt;font-weight:400;line-height:100%"&gt;1,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,472)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at July 31, 2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,534&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(10,534)&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:9pt;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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares at July 31, 2021&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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;315,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;315,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfStockholdersEquityTableTextBlock>
    <brc:OtherStockholdersEquity
      contextRef="i0740ec63279541cfbe558a832042ecba_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEtMi0xLTEtMA_4cca539d-7a73-4b2a-a352-b2b1b0dbe9d2"
      unitRef="usd">8222000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i0ef7266f444c4af298b7491870a5324a_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEtNC0xLTEtMA_f761e490-2acb-4bc4-b8c5-e3b9a3969056"
      unitRef="usd">-8222000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i29174ebb22e8416bbfeb7d3a8f58b84e_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEtNi0xLTEtMA_a28f9c09-ad5c-4444-806f-21277d20931a"
      unitRef="usd">0</brc:OtherStockholdersEquity>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="i0740ec63279541cfbe558a832042ecba_I20180731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzItMi0xLTEtMA_4833bc65-0968-47a8-8045-e39aa39f69cd"
      unitRef="shares">299916</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="i0ef7266f444c4af298b7491870a5324a_I20180731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzItNC0xLTEtMA_7cb48382-7609-44c5-b97a-60aea5d2980c"
      unitRef="shares">299916</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:SaleOfSharesAtCost
      contextRef="ia4c89ae4f44c4533a454bc2e4350aeeb_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzMtMi0xLTEtMA_f51a58fc-9d1e-45ab-bf4f-fd86d6f68f57"
      unitRef="usd">928000</brc:SaleOfSharesAtCost>
    <brc:SaleOfSharesAtCost
      contextRef="i8ea0bbf9d6784dc19c5b6d7839a4c8c9_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzMtNC0xLTEtMA_e880eacf-c537-493a-812d-8e0f9b6e3be8"
      unitRef="usd">928000</brc:SaleOfSharesAtCost>
    <brc:SaleOfSharesAtCost
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzMtNi0xLTEtMA_cde4ece1-5208-45ac-aea8-8d7f9eb944fd"
      unitRef="usd">0</brc:SaleOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="ia4c89ae4f44c4533a454bc2e4350aeeb_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzQtMi0xLTEtMA_7f804613-329a-491d-8193-abfd0a57d40d"
      unitRef="usd">1212000</brc:PurchaseOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i8ea0bbf9d6784dc19c5b6d7839a4c8c9_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzQtNC0xLTEtMA_3bbac551-1818-4135-a724-aaa2f2a82afb"
      unitRef="usd">1212000</brc:PurchaseOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzQtNi0xLTEtMA_c9d5462d-5667-4670-b0f7-70f680e2ba83"
      unitRef="usd">0</brc:PurchaseOfSharesAtCost>
    <brc:OtherStockholdersEquity
      contextRef="ie3a9145bd07245e7a6928f9ec06579a4_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzUtMi0xLTEtMA_e8a026e9-1674-4a65-b11f-58f55b8e159a"
      unitRef="usd">8506000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i06e63e40d0ac4688b3a6e3bb49a9ad3f_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzUtNC0xLTEtMA_dc5c6aaf-9600-4868-b747-b63713107d48"
      unitRef="usd">-8506000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzUtNi0xLTEtMA_ad52ebcd-5911-4aec-9b9d-35f5cc1d52c2"
      unitRef="usd">0</brc:OtherStockholdersEquity>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="ie3a9145bd07245e7a6928f9ec06579a4_I20190731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzYtMi0xLTEtMA_ce51e742-46dc-4272-ab30-debc37248673"
      unitRef="shares">285533</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="i06e63e40d0ac4688b3a6e3bb49a9ad3f_I20190731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzYtNC0xLTEtMA_b7925203-698f-45ea-8c87-4baa0a2416db"
      unitRef="shares">285533</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:SaleOfSharesAtCost
      contextRef="i8dbc7a903c7746d884ed0ec30df7a1ed_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzctMi0xLTEtMA_84bbc24e-cc31-4683-9de4-4cd9f0040b7b"
      unitRef="usd">460000</brc:SaleOfSharesAtCost>
    <brc:SaleOfSharesAtCost
      contextRef="i820a23931f444521a8d05f7259d6414a_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzctNC0xLTEtMA_8ff26bcb-55b5-4ead-b09c-00d7e6f52aba"
      unitRef="usd">460000</brc:SaleOfSharesAtCost>
    <brc:SaleOfSharesAtCost
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzctNi0xLTEtMA_863bfd22-c3c9-4764-a82f-0e4653996430"
      unitRef="usd">0</brc:SaleOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i8dbc7a903c7746d884ed0ec30df7a1ed_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzgtMi0xLTEtMA_0464c752-2465-4e61-a542-1a8e4e9f7d03"
      unitRef="usd">1293000</brc:PurchaseOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i820a23931f444521a8d05f7259d6414a_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzgtNC0xLTEtMA_6279c99a-55e4-44f8-b946-fd6e6174d96a"
      unitRef="usd">1293000</brc:PurchaseOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzgtNi0xLTEtMA_7fc1053b-ec2a-4274-91ca-50df37491e74"
      unitRef="usd">0</brc:PurchaseOfSharesAtCost>
    <brc:OtherStockholdersEquity
      contextRef="i23d360917d2c403a840a1f471cefe274_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzktMi0xLTEtMA_94e51233-5dca-43c7-84c8-166458165c9b"
      unitRef="usd">9339000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i21851c904da041babf3b1762042c399a_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzktNC0xLTEtMA_9a9d9251-dbaf-4076-b494-e86e3a01260f"
      unitRef="usd">-9339000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzktNi0xLTEtMA_4bac8ea1-13fd-4139-8e55-9e4832caaa30"
      unitRef="usd">0</brc:OtherStockholdersEquity>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="i23d360917d2c403a840a1f471cefe274_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEwLTItMS0xLTA_bd505a68-0e15-4ae0-adfb-7cbd6bf1ecc2"
      unitRef="shares">292329</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="i21851c904da041babf3b1762042c399a_I20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEwLTQtMS0xLTA_7cc1383a-0888-4cf8-ab49-7e9758d968de"
      unitRef="shares">292329</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:SaleOfSharesAtCost
      contextRef="ic2905d02956c4bc4b1e1274682829c18_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzExLTItMS0xLTA_869fa2d4-394a-41fe-b974-73c263e572b3"
      unitRef="usd">277000</brc:SaleOfSharesAtCost>
    <brc:SaleOfSharesAtCost
      contextRef="i35b6434abbac492a98260716d10a6b99_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzExLTQtMS0xLTA_17a92c5e-6198-47c1-99d0-3e4c9488d7df"
      unitRef="usd">277000</brc:SaleOfSharesAtCost>
    <brc:SaleOfSharesAtCost
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzExLTYtMS0xLTA_eae18bc4-3dcf-41f6-bbe7-e3f19e13f437"
      unitRef="usd">0</brc:SaleOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="ic2905d02956c4bc4b1e1274682829c18_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEyLTItMS0xLTA_778cfdea-edd4-45f9-9ad7-0b6eba974857"
      unitRef="usd">1472000</brc:PurchaseOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i35b6434abbac492a98260716d10a6b99_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEyLTQtMS0xLTA_239b47fa-467c-4dd2-95c4-761f67e52ec3"
      unitRef="usd">1472000</brc:PurchaseOfSharesAtCost>
    <brc:PurchaseOfSharesAtCost
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEyLTYtMS0xLTA_f51bb39d-eaeb-4ee7-bc29-71090352ecdf"
      unitRef="usd">0</brc:PurchaseOfSharesAtCost>
    <brc:OtherStockholdersEquity
      contextRef="id8e74366f9944a4cbe5c4e6e58a71ee5_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEzLTItMS0xLTA_364e6b3f-909c-4b50-bfb6-2d93db04e84e"
      unitRef="usd">10534000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i36e39acffa234cfa89f71d7f941fe580_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEzLTQtMS0xLTA_4421e2f5-f1bb-447a-9400-fec922c15cf7"
      unitRef="usd">-10534000</brc:OtherStockholdersEquity>
    <brc:OtherStockholdersEquity
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzEzLTYtMS0xLTA_b6d98500-0c42-406a-9267-32b9289f3af5"
      unitRef="usd">0</brc:OtherStockholdersEquity>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="id8e74366f9944a4cbe5c4e6e58a71ee5_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzE0LTItMS0xLTA_b612ff8a-da5a-49e3-b634-caa956a52426"
      unitRef="shares">315916</brc:EndingBalanceOtherStockholdersEquityShares>
    <brc:EndingBalanceOtherStockholdersEquityShares
      contextRef="i36e39acffa234cfa89f71d7f941fe580_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo1OTE4ZTg4YTI4MGY0MzI4OWVjMjY3Y2E3ZmIyY2MxMC90YWJsZXJhbmdlOjU5MThlODhhMjgwZjQzMjg5ZWMyNjdjYTdmYjJjYzEwXzE0LTQtMS0xLTA_9bd3167e-128f-432f-bba8-c0a79d87dc6b"
      unitRef="shares">315916</brc:EndingBalanceOtherStockholdersEquityShares>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzMyMTY_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzMyNDU_2b5768ef-19da-4058-8ef7-e51a3c7d8c64"
      unitRef="shares">1749815</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzMzMzI_f110d916-f8cd-43a8-8ece-80986e7d1e3d"
      unitRef="shares">2959105</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM3MTU_fd65c9e5-1938-42f6-909d-f7f9898c97ab"
      unitRef="usd">10098000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM3MTk_6c561718-11f8-4131-b807-423fb7ea2617"
      unitRef="usd">9543000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM3Mzc_3a46d683-f5b6-48fa-8feb-c2182730cd14"
      unitRef="usd">8843000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM3NDE_cc3947ec-6fe9-462a-b787-7ce3787f386e"
      unitRef="usd">8048000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM3NjM_b905e96a-9470-453e-9b04-4affb2f94c9a"
      unitRef="usd">12092000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM3Njc_4df4e67f-94eb-4b43-af96-a767a4e444e9"
      unitRef="usd">10628000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM4MDU_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzM5MTk_9b7f4c7c-ddcf-4bc4-9781-4b3290735a1f"
      unitRef="usd">8033000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQwMzQ_45147e88-7a60-4c6a-bc9f-e86efebd4f95">P1Y4M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationPeriod
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQ0NjE_2f40f966-fa68-4a24-bfde-cf8e8c2a98ed">P10Y</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationPeriod>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0MTg_e8841955-b90a-40fe-b9c1-4451089231f1">The weighted-average assumptions used in the Black-Scholes valuation model are reflected in the following table:&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:66.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.987%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.993%"/&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:9pt;font-weight:700;line-height:100%"&gt;Black-Scholes Option Valuation Assumptions&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:9pt;font-weight:700;line-height:100%"&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:9pt;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="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.21&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.20&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.20&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected volatility&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:9pt;font-weight:400;line-height:100%"&gt;30.71&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;26.07&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;26.05&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&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:9pt;font-weight:400;line-height:100%"&gt;2.49&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.63&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&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:9pt;font-weight:400;line-height:100%"&gt;0.38&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.64&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3.01&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average market value of underlying stock at grant date&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;54.05&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;43.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average exercise price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;54.05&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;43.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average fair value of options granted during the period&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8.65&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10.63&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9.70&#160;&lt;/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:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzEtMi0xLTEtMA_5ea77bd0-ccf4-4954-83bd-13cf6c73599f">P6Y2M15D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzEtNC0xLTEtMA_a4d2d137-7b37-4dcb-bf28-3b69c2a58e24">P6Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzEtNi0xLTEtMA_fe4d3142-f176-431b-9a49-ce80d57e375c">P6Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzItMi0xLTEtMA_ff3dd5b5-799c-4a84-ad28-2e3d8596b79b"
      unitRef="rate">0.3071</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzItNC0xLTEtMA_fdab5043-f3cd-49ee-a852-1e62ed1bbfab"
      unitRef="rate">0.2607</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzItNi0xLTEtMA_c7f2ed03-7504-46fd-8919-356daf1b269b"
      unitRef="rate">0.2605</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzMtMi0xLTEtMA_ebd05e66-d2ce-44fb-9c79-bde449e36801"
      unitRef="rate">0.0249</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzMtNC0xLTEtMA_bec742b6-8596-4448-bc2e-021b0f50cd3f"
      unitRef="rate">0.0263</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzMtNi0xLTEtMA_45b1cf47-41e2-4d72-a114-a0b04f4ca448"
      unitRef="rate">0.0271</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzQtMi0xLTEtMA_0f3cc1fa-bf57-4ea5-87ad-6db2122201df"
      unitRef="rate">0.0038</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzQtNC0xLTEtMA_006ebe70-6734-495d-bca2-ee47d51604f9"
      unitRef="rate">0.0164</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzQtNi0xLTEtMA_7db5ddea-2f79-4192-89fb-8ddc3ebe6589"
      unitRef="rate">0.0301</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <brc:SharebasedCompensationArrangementsbySharebasedPaymentAwardOptionsGrantsinPeriodWeightedAverageMarketValueOfUnderlyingStockatGrantDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzUtMi0xLTEtMA_a8d47791-8bad-4d01-b2a7-9aa63acb480d"
      unitRef="usdPerShare">39.92</brc:SharebasedCompensationArrangementsbySharebasedPaymentAwardOptionsGrantsinPeriodWeightedAverageMarketValueOfUnderlyingStockatGrantDate>
    <brc:SharebasedCompensationArrangementsbySharebasedPaymentAwardOptionsGrantsinPeriodWeightedAverageMarketValueOfUnderlyingStockatGrantDate
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzUtNC0xLTEtMA_948844d9-2cff-43f1-90a4-ee51569fb3f6"
      unitRef="usdPerShare">54.05</brc:SharebasedCompensationArrangementsbySharebasedPaymentAwardOptionsGrantsinPeriodWeightedAverageMarketValueOfUnderlyingStockatGrantDate>
    <brc:SharebasedCompensationArrangementsbySharebasedPaymentAwardOptionsGrantsinPeriodWeightedAverageMarketValueOfUnderlyingStockatGrantDate
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzUtNi0xLTEtMA_a0de4554-fd07-4057-885e-f6a5d11aa690"
      unitRef="usdPerShare">43.96</brc:SharebasedCompensationArrangementsbySharebasedPaymentAwardOptionsGrantsinPeriodWeightedAverageMarketValueOfUnderlyingStockatGrantDate>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzYtMi0xLTEtMA_b8b00d77-0a86-405f-a914-77a390678f70"
      unitRef="usdPerShare">39.92</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzYtNC0xLTEtMA_8f44b3a7-e6e3-4c5f-a3b2-8466f8d36696"
      unitRef="usdPerShare">54.05</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzYtNi0xLTEtMA_7941c26b-b1e4-4733-9a84-071051d02a5c"
      unitRef="usdPerShare">43.96</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzctMi0xLTEtMA_c2369b57-4008-4f91-95fb-d8c967f7a615"
      unitRef="usdPerShare">8.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzctNC0xLTEtMA_b56857c5-daac-4e04-995f-1d0964e4a6a8"
      unitRef="usdPerShare">10.63</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpiNzJmNDQxNTEyZGQ0NGYwODdmNzYzNjNmNGFjYTM3My90YWJsZXJhbmdlOmI3MmY0NDE1MTJkZDQ0ZjA4N2Y3NjM2M2Y0YWNhMzczXzctNi0xLTEtMA_45ff5821-7fe9-4ce5-ad70-da11a616f850"
      unitRef="usdPerShare">9.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0NDU_171b39bb-35c0-4c51-95a1-4ae78d4f82af">&lt;div style="margin-top:9pt;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;The following is a summary of stock option activity for the fiscal year ended July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:44.861%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.214%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:1.983%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:5.214%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.961%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.965%"/&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:9pt;font-weight:700;line-height:100%"&gt;Time-Based Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Option Price&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:9pt;font-weight:700;line-height:100%"&gt;Options Outstanding&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:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19.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;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$54.05&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:9pt;font-weight:400;line-height:100%"&gt;1,273,382&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;37.84&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;New grants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39.92&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:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;303,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Exercised&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:9pt;font-weight:400;line-height:100%"&gt;19.96&#160;&lt;/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:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;54.05&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:9pt;font-weight:400;line-height:100%"&gt;(77,272)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;32.07&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited&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:9pt;font-weight:400;line-height:100%"&gt;39.92&#160;&lt;/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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;54.05&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:9pt;font-weight:400;line-height:100%"&gt;(25,094)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;44.82&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19.96&#160;&lt;/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:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$54.05&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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,474,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;38.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceLowerRange
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzEtMi0xLTEtMA_01e90189-2d07-4686-b91d-54572ec9dc65"
      unitRef="usdPerShare">19.96</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceLowerRange>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceUpperRange
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzEtNC0xLTEtMA_7ba60ad6-948d-494a-b75a-8767bc5d1031"
      unitRef="usdPerShare">54.05</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceUpperRange>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzEtNi0xLTEtMA_a84223d8-fcea-411c-a315-9e5ee1e5d7c0"
      unitRef="shares">1273382</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzEtOC0xLTEtMA_b1b647e2-eb86-4c40-b236-10720947a93e"
      unitRef="usdPerShare">37.84</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodPrice
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzItMi0xLTEtMA_e210d75e-ab92-49c3-86b7-672d4bd768c1"
      unitRef="usdPerShare">39.92</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodPrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzItNi0xLTEtMA_f03609c5-5ff0-4894-825e-51c9ab341cd5"
      unitRef="shares">303052</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzItOC0xLTEtMA_49fcf91b-d659-43ea-83db-c4492cd8a59b"
      unitRef="usdPerShare">39.92</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodPriceLowerRange
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzMtMi0xLTEtMA_2b54d9e0-4716-4963-9e96-687e106216c9"
      unitRef="usdPerShare">19.96</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodPriceLowerRange>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodPriceUpperRange
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzMtNC0xLTEtMA_6b4f0c54-2358-4546-9681-956dfd843f6c"
      unitRef="usdPerShare">54.05</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodPriceUpperRange>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzMtNi0xLTEtMA_7976504b-3cfd-4528-8631-de3da0dd1fcf"
      unitRef="shares">77272</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzMtOC0xLTEtMA_01bc93e6-f617-41c6-b2d8-bf0c8296f438"
      unitRef="usdPerShare">32.07</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancelledInPeriodPriceLowerRange
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzQtMi0xLTEtMA_f943e1e6-d13a-49d8-b5c7-9fc499f6c0a7"
      unitRef="usdPerShare">39.92</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancelledInPeriodPriceLowerRange>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancelledInPeriodPriceUpperRange
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzQtNC0xLTEtMA_6111e01b-b183-4297-8cba-b977f018abce"
      unitRef="usdPerShare">54.05</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancelledInPeriodPriceUpperRange>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzQtNi0xLTEtMA_a43c8db3-0476-491c-af66-cfc790d150f7"
      unitRef="shares">25094</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzQtOC0xLTEtMA_736cb9f1-9e32-4e62-8bfb-70ee0e6b6da7"
      unitRef="usdPerShare">44.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceLowerRange
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzUtMi0xLTEtMA_735f11cc-a814-49c3-b357-bc6f4574da44"
      unitRef="usdPerShare">19.96</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceLowerRange>
    <brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceUpperRange
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzUtNC0xLTEtMA_c2feaeaf-9c8e-42dc-a3f2-cd9a822022b6"
      unitRef="usdPerShare">54.05</brc:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPriceUpperRange>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzUtNi0xLTEtMA_4858c108-363c-4246-9206-06fef9194645"
      unitRef="shares">1474068</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTowZjkwMGM5YTFjNjY0M2MyODRlYTVmZTdlMzM1NjhiOS90YWJsZXJhbmdlOjBmOTAwYzlhMWM2NjQzYzI4NGVhNWZlN2UzMzU2OGI5XzUtOC0xLTEtMA_140db7c6-25b5-46ff-b564-c7551fb81148"
      unitRef="usdPerShare">38.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQ5NjA_c22be011-efde-41c8-b026-c0a8c7a1252a"
      unitRef="usd">2371000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="i411b41d4e7e346d0974f90725501fd63_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQ5NjQ_cba2d923-01df-464d-87ea-633f0b31ae0d"
      unitRef="usd">2800000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="i93dcbd23371e4b9899636f96a0a7b3fd_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzQ5NzI_00c52d6e-4660-418f-a818-8b240cf39fe8"
      unitRef="usd">2864000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUwODc_4604c025-613d-4a33-9066-fd80d421b9b6"
      unitRef="usd">1477000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i411b41d4e7e346d0974f90725501fd63_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUwOTE_4ef51018-4afc-4f74-8135-8d307db76a98"
      unitRef="usd">14692000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i93dcbd23371e4b9899636f96a0a7b3fd_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUwOTk_11b310fa-05bd-4fb8-adec-a89cad9a0b17"
      unitRef="usd">20969000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber
      contextRef="ia9d4e18ac691418ca8b0b17bca8bfc55_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUxMjg_0eac94a0-e6ad-4e33-9bdc-bc3dac9ee65d"
      unitRef="shares">949668</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber
      contextRef="if70060186e7b47cdacdcb95235517d62_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUxMzI_f058ff9a-2a7d-4511-9b7b-96860866f28d"
      unitRef="shares">776273</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber
      contextRef="id3293defa9d44f39a2b6ba4b00e787f6_I20190731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUxNDA_34301111-7325-4b04-b2c6-db0ca40ab1a5"
      unitRef="shares">1025811</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="ia9d4e18ac691418ca8b0b17bca8bfc55_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUyMDU_98c0a937-bdf1-405e-bcf4-fd3d869e939e"
      unitRef="usdPerShare">34.97</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="if70060186e7b47cdacdcb95235517d62_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUyMDk_11cbf14e-8291-4733-9cd4-f4286f7f3f86"
      unitRef="usdPerShare">31.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="id3293defa9d44f39a2b6ba4b00e787f6_I20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUyMTc_e1fbd2b2-42bd-4e8e-b414-436e6fdeed82"
      unitRef="usdPerShare">27.06</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUzNTY_aa5b0ec7-b72e-4add-afcc-e181c97bcb5d"
      unitRef="usd">1765000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="i411b41d4e7e346d0974f90725501fd63_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUzNjA_dfac2694-8d85-42cb-b5e1-1e5e7e2e7911"
      unitRef="usd">5511000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="i93dcbd23371e4b9899636f96a0a7b3fd_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzUzNjg_d49b4c96-333c-4d39-ab00-74469cd6014f"
      unitRef="usd">23466000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="i8b1d03ecb7994b148f759a64609b44b3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzU0NzM_61479e3b-a8ff-4bd0-9c67-938a98f70ea6"
      unitRef="usd">369000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="i411b41d4e7e346d0974f90725501fd63_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzU0Nzc_b52efa66-b874-43d1-9466-0b14cd0947b2"
      unitRef="usd">3673000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="i93dcbd23371e4b9899636f96a0a7b3fd_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzU0ODU_527611e2-2ccc-4119-b6b1-e1891fe50fdd"
      unitRef="usd">5242000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0NTA_299f663c-003d-4eb6-bf8c-b7806e81bfbc">&lt;div style="margin-top:9pt;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;The following table summarizes information about stock options outstanding at July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.643%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.466%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.198%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.466%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.466%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.198%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.471%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="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:8pt;font-weight:700;line-height:100%"&gt;Options Outstanding&lt;/span&gt;&lt;/td&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:8pt;font-weight:700;line-height:100%"&gt;Options&#160;Outstanding&#160;and Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Range of Exercise Prices&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Number&#160;of Shares Outstanding at July&#160;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-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted&#160; Average Remaining Contractual Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Shares Exercisable at July&#160;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-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Contractual Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$19.96 - $29.99&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:9pt;font-weight:400;line-height:100%"&gt;217,913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20.87&#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:9pt;font-weight:400;line-height:100%"&gt;217,913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20.87&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$30.00 - $39.99&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:9pt;font-weight:400;line-height:100%"&gt;789,608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.6&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:9pt;font-weight:400;line-height:100%"&gt;37.05&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;501,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.2&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:9pt;font-weight:400;line-height:100%"&gt;35.40&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$40.00 - $54.05&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:9pt;font-weight:400;line-height:100%"&gt;466,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.7&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:9pt;font-weight:400;line-height:100%"&gt;49.02&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;229,758&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.5&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:9pt;font-weight:400;line-height:100%"&gt;47.39&#160;&lt;/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 19pt 2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,474,068&#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 colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;38.45&#160;&lt;/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;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;949,668&#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 colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.4&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;34.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="id0a6fd2abe094b0ab00ba917e8794647_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzItMi0xLTEtMA_70de05cf-a3fc-4280-8ef1-818d9edaf2d9"
      unitRef="shares">217913</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="ibdd75b7aa015407c8cca3617a12066d0_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzItNC0xLTEtMA_e9bc2ccc-ebb3-4e15-bd88-52c518d89c35">P3Y9M18D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="id0a6fd2abe094b0ab00ba917e8794647_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzItNi0xLTEtMA_8a27f2d4-c42b-472a-b511-fa85d12c46c0"
      unitRef="usdPerShare">20.87</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="id0a6fd2abe094b0ab00ba917e8794647_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzItOC0xLTEtMA_115f04c5-2d7e-4d25-9a56-fe9f0459c8f2"
      unitRef="shares">217913</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2
      contextRef="ibdd75b7aa015407c8cca3617a12066d0_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzItMTAtMS0xLTA_69725c3d-bdec-476e-8763-3aa126ad4222">P3Y9M18D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="id0a6fd2abe094b0ab00ba917e8794647_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzItMTItMS0xLTA_1a407771-314c-47a6-b277-2b413486aea8"
      unitRef="usdPerShare">20.87</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i3c58b5d6dfe942adbefd127a46acb868_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzMtMi0xLTEtMA_4c7e6f98-81a4-4af5-9d55-54880b6432ca"
      unitRef="shares">789608</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i3752ceebd5e040eb8ac1c26d5fe8364a_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzMtNC0xLTEtMA_9c58c088-0511-47c7-9e9e-ce8801afea04">P6Y7M6D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i3c58b5d6dfe942adbefd127a46acb868_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzMtNi0xLTEtMA_aa9219d7-33ab-44de-b3e5-d2d734cb774a"
      unitRef="usdPerShare">37.05</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i3c58b5d6dfe942adbefd127a46acb868_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzMtOC0xLTEtMA_7a82467c-fa17-484c-bad9-50b807b65b3d"
      unitRef="shares">501997</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i3752ceebd5e040eb8ac1c26d5fe8364a_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzMtMTAtMS0xLTA_8306c79a-6683-4311-b44c-93aea38855f0">P5Y2M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i3c58b5d6dfe942adbefd127a46acb868_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzMtMTItMS0xLTA_bea45db3-4740-4c6f-a102-b672df9d2ed2"
      unitRef="usdPerShare">35.40</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="id87d477a1506407e98898833b6a14381_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzQtMi0xLTEtMA_f69fc65c-cb2b-4afe-a7b9-f65790196806"
      unitRef="shares">466547</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="ie635f1b11c8b4daa8ec63424e6f25063_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzQtNC0xLTEtMA_9fb1618c-1a8e-4e38-afa0-2489c5720ffb">P7Y8M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="id87d477a1506407e98898833b6a14381_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzQtNi0xLTEtMA_6fb8f66a-b511-4770-a13d-501dd26c830c"
      unitRef="usdPerShare">49.02</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="id87d477a1506407e98898833b6a14381_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzQtOC0xLTEtMA_ce20ef0f-1f5e-48f0-bbf7-785953c12980"
      unitRef="shares">229758</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2
      contextRef="ie635f1b11c8b4daa8ec63424e6f25063_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzQtMTAtMS0xLTA_7ef6e41c-bcb0-4525-9b9d-809942e3dcc3">P7Y6M</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="id87d477a1506407e98898833b6a14381_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzQtMTItMS0xLTA_14703dec-28b5-47cc-a044-ddc6f0c60004"
      unitRef="usdPerShare">47.39</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzUtMi0xLTEtMA_18053397-4a5c-4b43-9a49-212e464931dc"
      unitRef="shares">1474068</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzUtNC0xLTEtMA_69bd79b2-1305-4909-bb26-d33db29a8664">P6Y6M</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzUtNi0xLTEtMA_66a03c0f-6494-4893-ae9b-b414397a4fd9"
      unitRef="usdPerShare">38.45</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzUtOC0xLTEtMA_46b49a12-9494-42d0-9008-5ee08dd987aa"
      unitRef="shares">949668</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzUtMTAtMS0xLTA_0845378e-d44d-4e0e-87a4-41024343c76d">P5Y4M24D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0OGZjYmNmNDYwMjU0MTE3YTBhZmEzNzQ1ZTRmNTJiYy90YWJsZXJhbmdlOjQ4ZmNiY2Y0NjAyNTQxMTdhMGFmYTM3NDVlNGY1MmJjXzUtMTItMS0xLTA_5c198bf2-3552-4f17-971f-af9629bddf92"
      unitRef="usdPerShare">34.97</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="ia9d4e18ac691418ca8b0b17bca8bfc55_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzU3OTU_604a649f-2220-490b-9997-8892c1540aaa"
      unitRef="usd">23828000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="ia9d4e18ac691418ca8b0b17bca8bfc55_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzU4MDI_5e1cfd86-2fe3-4b42-acc0-b030a63eccc3"
      unitRef="usd">18653000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzc0Mzk_a322d919-2751-412b-89d2-47d989a14051">&lt;div style="margin-top:9pt;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;The following tables summarize the RSU activity for the fiscal year ended July&#160;31, 2021:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:65.712%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.130%"/&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:9pt;font-weight:700;line-height:100%"&gt;Time-Based RSUs&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Grant Date&lt;br/&gt;&#160;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;154,960&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;47.39&#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:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;New grants&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:9pt;font-weight:400;line-height:100%"&gt;79,811&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;40.82&#160;&lt;/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:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(69,436)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;44.48&#160;&lt;/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:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited&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:9pt;font-weight:400;line-height:100%"&gt;(8,869)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;46.14&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 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 #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:9pt;font-weight:400;line-height:100%"&gt;156,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;45.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The time-based RSUs granted during the fiscal year ended July&#160;31, 2020 and 2019, had a weighted-average grant-date fair value of $53.38 and $44.20, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.712%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.128%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.130%"/&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:9pt;font-weight:700;line-height:100%"&gt;Performance-Based RSUs&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:9pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Grant Date&lt;br/&gt;&#160;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;126,060&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;50.61&#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:middle"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;New grants &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;64,634&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;60.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(71,413)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;33.12&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;119,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;61.05&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt; Includes 23,805 shares resulting from the payout of performance-based RSUs granted in fiscal year 2018 due to the achievement of performance metrics exceeding the target payout.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="if6e19a236ea445f89763d6882cc52e68_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzEtMS0xLTEtMA_70f3204f-ecc5-4482-9519-ae4eed826bcf"
      unitRef="shares">154960</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="if6e19a236ea445f89763d6882cc52e68_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzEtMy0xLTEtMA_df95b544-7ee7-45bc-b513-5fb17876e9b1"
      unitRef="usdPerShare">47.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzItMS0xLTEtMA_3947bd58-8a29-41bc-804a-a8761fe3d816"
      unitRef="shares">79811</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzItMy0xLTEtMA_a18fd844-b423-408c-a986-454158121f7e"
      unitRef="usdPerShare">40.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzMtMS0xLTEtMA_9372ceb6-567a-48e6-8f39-e79a607ed9d4"
      unitRef="shares">69436</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzMtMy0xLTEtMA_c94bc487-53ea-409c-ab56-f81401eec49f"
      unitRef="usdPerShare">44.48</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzQtMS0xLTEtMA_ca2d7cf1-c8e5-4c43-91fe-d8f8347db1ce"
      unitRef="shares">8869</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzQtMy0xLTEtMA_85b839c9-3bd2-498a-949f-5cdb32774b6f"
      unitRef="usdPerShare">46.14</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i0db3e4f7abb549b1be27fd32f34fb01b_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzUtMS0xLTEtMA_3668329f-3811-4423-b5e9-27bcc979fa7a"
      unitRef="shares">156466</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i0db3e4f7abb549b1be27fd32f34fb01b_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTpkMDA3MWFmOTNkYjg0NmZiYTI4OWQzZDM5OTg0YjZmMS90YWJsZXJhbmdlOmQwMDcxYWY5M2RiODQ2ZmJhMjg5ZDNkMzk5ODRiNmYxXzUtMy0xLTEtMA_a75d8204-d45e-41f9-8ba8-6603be57af17"
      unitRef="usdPerShare">45.40</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ic3e63b0de1954c0182418f99b458edc1_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzY2MjM_6b2b04e3-1b54-4f47-a019-df72b8768374"
      unitRef="usdPerShare">53.38</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ica689889ad2e4b5cabd5fdb79098a450_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzEtMS0xLTEtMA_203c903b-138c-4910-84e2-762de826c60f"
      unitRef="shares">126060</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ica689889ad2e4b5cabd5fdb79098a450_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzEtMy0xLTEtMA_0851f66b-5efb-423d-8c30-7a93728f432d"
      unitRef="usdPerShare">50.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i098f06058c5040979daaa970fa60f4b5_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzItMS0xLTEtMA_d4a305d2-4bfb-40b7-978f-83406497a31d"
      unitRef="shares">64634</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i098f06058c5040979daaa970fa60f4b5_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzItMy0xLTEtMA_9b6dd201-57b2-4cd5-8f69-cf47854d1835"
      unitRef="usdPerShare">60.73</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i098f06058c5040979daaa970fa60f4b5_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzUtMS0xLTEtMA_cf0069a5-9f44-40ef-a864-c1ab82f5626d"
      unitRef="shares">71413</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i098f06058c5040979daaa970fa60f4b5_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzUtMy0xLTEtMA_2fd8c788-a78e-4ee2-8562-cd0b6b3939e8"
      unitRef="usdPerShare">33.12</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i6c369a696e9c4bc08956bdcddfdaf8b7_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzctMS0xLTEtMA_7ec5fa75-56dc-4bbe-8c91-b3aabbbc668c"
      unitRef="shares">119281</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i6c369a696e9c4bc08956bdcddfdaf8b7_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90YWJsZTo0MThmMTI5YzQ3NmQ0ZDQ0YTFjOTkxOTJjODFiMmQ2MS90YWJsZXJhbmdlOjQxOGYxMjljNDc2ZDRkNDRhMWM5OTE5MmM4MWIyZDYxXzctMy0xLTEtMA_80217465-0cf5-4932-9b6c-eaa2d3f156a2"
      unitRef="usdPerShare">61.05</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="id4a88eadf6ea406c8451e569dff29dc7_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzcyNDE_3bf27836-6dc1-4d00-9fc8-e0f944de78c6"
      unitRef="usdPerShare">75.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="id41ab0a5e30f4a87a7e10301928c9604_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzEwOTk1MTE2MzU2NDY_d5f9f7e2-50cb-45df-8e0d-26d75442ad1c"
      unitRef="usdPerShare">50.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i434e0573b93443589753726ff58701d0_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzEwOTk1MTE2MzU4MDA_0329c381-a38e-4859-b9e1-1bd1555bcb3c"
      unitRef="usd">6167000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ic3e63b0de1954c0182418f99b458edc1_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzEwOTk1MTE2MzU4MDg_175a36d4-7e0b-4d96-a512-2c2dc9f25a1c"
      unitRef="usd">9776000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i6c369a696e9c4bc08956bdcddfdaf8b7_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzczNzc_4aead926-cbfa-4919-a60f-c679b916e113"
      unitRef="usd">16849000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="ica689889ad2e4b5cabd5fdb79098a450_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzMvZnJhZzo2NmI2ZjkwMmUyYWI0M2U3OTEzZjVjYTEwZTgxYTRkMS90ZXh0cmVnaW9uOjY2YjZmOTAyZTJhYjQzZTc5MTNmNWNhMTBlODFhNGQxXzczODQ_ad2bbb60-be5f-445a-8662-bc450c4502a7"
      unitRef="usd">14013000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <us-gaap:ComprehensiveIncomeNoteTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90ZXh0cmVnaW9uOmU2NDQ3YzIwOGM0NzRmNjI5OTIwODg4MmRhMmNlMWUwXzEzODA_06442e94-8742-4714-897a-8e7ce5c89f41">Other Comprehensive Loss&lt;div style="margin-top:9pt;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;Other comprehensive loss consists of foreign currency translation adjustments which includes net investment hedges, unrealized gains and losses from cash flow hedges, and the unamortized gain on post-retirement plans, net of their related tax effects.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table illustrates the changes in the balances of each component of accumulated other comprehensive loss, net of tax, for the periods presented:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.584%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized gain (loss) on cash flow hedges&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:9pt;font-weight:700;line-height:100%"&gt;Unamortized gain on postretirement plans&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:9pt;font-weight:700;line-height:100%"&gt;Foreign currency translation adjustments&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:9pt;font-weight:700;line-height:100%"&gt;Accumulated other comprehensive loss&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:9pt;font-weight:400;line-height:100%"&gt;Ending balance, July 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;707&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,800&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(74,761)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(71,254)&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:9pt;font-weight:400;line-height:100%"&gt;Other comprehensive (loss) income before reclassification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(447)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(332)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,303&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amounts reclassified from accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(460)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(287)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(747)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Ending balance, July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(200)&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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;2,181&#160;&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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(68,458)&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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(66,477)&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other comprehensive income (loss) before reclassification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;1,228&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;(5)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;9,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;11,111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;Amounts reclassified from accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(299)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(288)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Ending balance, July 31, 2021&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(58,570)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(55,953)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The decrease&lt;/span&gt;&lt;span style="color:#ee2724;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;in accumulated other comprehensive loss as of July&#160;31, 2021, compared to July 31, 2020, was primarily due to the depreciation of the U.S. dollar against certain other currencies during the fiscal year. Of the amounts reclassified from &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;accumulated other comprehensive loss during the years ended July&#160;31, 2021 and 2020, unrealized gains on cash flow hedges were reclassified into "Cost of goods sold" and net unamortized gains on post-retirement plans were reclassified into "Investment and other income" on the Consolidated Statements of Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table illustrates the income tax (expense) benefit on the components of other comprehensive income (loss):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:60.303%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.039%"/&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="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:9pt;font-weight:400;line-height:100%"&gt;Income tax (expense) benefit related to items of other comprehensive income (loss):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash flow hedges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(123)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;283&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Pension and other post-retirement benefits&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:9pt;font-weight:400;line-height:100%"&gt;95&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;229&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income tax adjustments and currency translation&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:9pt;font-weight:400;line-height:100%"&gt;(378)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(337)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(972)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax (expense) benefit related to items of other comprehensive income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(406)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;175&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(753)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90ZXh0cmVnaW9uOmU2NDQ3YzIwOGM0NzRmNjI5OTIwODg4MmRhMmNlMWUwXzEzODM_0c79aeda-0ec7-4bc8-8949-f9479e08b883">&lt;div style="margin-top:9pt;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;The following table illustrates the changes in the balances of each component of accumulated other comprehensive loss, net of tax, for the periods presented:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.584%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized gain (loss) on cash flow hedges&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:9pt;font-weight:700;line-height:100%"&gt;Unamortized gain on postretirement plans&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:9pt;font-weight:700;line-height:100%"&gt;Foreign currency translation adjustments&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:9pt;font-weight:700;line-height:100%"&gt;Accumulated other comprehensive loss&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:9pt;font-weight:400;line-height:100%"&gt;Ending balance, July 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;707&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,800&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(74,761)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(71,254)&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:9pt;font-weight:400;line-height:100%"&gt;Other comprehensive (loss) income before reclassification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(447)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(332)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,303&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amounts reclassified from accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(460)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(287)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(747)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Ending balance, July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(200)&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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;2,181&#160;&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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(68,458)&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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(66,477)&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other comprehensive income (loss) before reclassification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;1,228&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;(5)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;9,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;11,111&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;Amounts reclassified from accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(299)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(288)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Ending balance, July 31, 2021&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(58,570)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(55,953)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i8936e4db81e84aafa9398897ceda45ab_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzEtMS0xLTEtMA_fb10c553-8e34-43b8-8cb2-593fc7daf2c6"
      unitRef="usd">707000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i2c38e68ee56648f1a16ed68b94351b35_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzEtMy0xLTEtMA_6d98bdcb-e8a4-43de-88f1-6d8af8886ce9"
      unitRef="usd">2800000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i8fd4de92e330471aae0b64c3a65fc8df_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzEtNS0xLTEtMA_c3f921c1-a19e-4cd6-a198-2ffe40799417"
      unitRef="usd">-74761000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzEtNy0xLTEtMA_dbd89481-861c-4340-afee-e036990e6e24"
      unitRef="usd">-71254000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i09b41baba69c4dd19791cd4fa11e6258_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzItMS0xLTEtMA_4b2917b1-eff2-43e7-9931-5749fb57be31"
      unitRef="usd">-447000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i54ac1fda1ab2449fa1bf12e7dd6b6d47_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzItMy0xLTEtMA_c278d23f-1d89-4977-b30c-1689427e04d2"
      unitRef="usd">-332000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="ic9532b8087ca4fa0ae84a280565a1a3c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzItNS0xLTEtMA_d0838225-a4de-45f4-858b-7cb80d0271b3"
      unitRef="usd">6303000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzItNy0xLTEtMA_570b4de5-e54b-4c32-b370-39dbc8b2ad17"
      unitRef="usd">5524000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i09b41baba69c4dd19791cd4fa11e6258_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzMtMS0xLTEtMA_c967fe64-3603-4391-b94f-995040e45531"
      unitRef="usd">-460000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i54ac1fda1ab2449fa1bf12e7dd6b6d47_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzMtMy0xLTEtMA_55e314cc-321f-478f-9097-dda61a62a866"
      unitRef="usd">-287000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="ic9532b8087ca4fa0ae84a280565a1a3c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzMtNS0xLTEtMA_9aa44ef3-7940-4dd8-ab72-9d807988ea0f"
      unitRef="usd">0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzMtNy0xLTEtMA_823dc0d2-1dc3-4631-8392-058f649f725e"
      unitRef="usd">-747000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i4e0e148e24cf46ddb51d8784ced7a06a_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzQtMS0xLTEtMA_bcf7a833-bcb8-43c2-9d63-f206ec966b3f"
      unitRef="usd">-200000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i6d8f50ebd9b74cb79864d7de8cd6e67e_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzQtMy0xLTEtMA_a6358175-3109-4ced-9acc-8f4a6504807c"
      unitRef="usd">2181000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i930d8660a4204395b9c95cff7234daff_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzQtNS0xLTEtMA_81083b9c-fe47-4212-bc3a-8a7748318f49"
      unitRef="usd">-68458000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzQtNy0xLTEtMA_34715c77-9c5e-4a7a-a92a-e04ab63c2371"
      unitRef="usd">-66477000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i26f8b07f1f764033b4134e05692ff0ac_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzUtMS0xLTEtMA_bc8392f9-682b-4687-8616-25b4b2c53356"
      unitRef="usd">1228000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="id929781b55584412b6f4431b0b5bd851_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzUtMy0xLTEtMA_dfe32148-da74-4ddb-87f6-0688b215dbd0"
      unitRef="usd">-5000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i3f6eb2d5664444aa842e42306985af11_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzUtNS0xLTEtMA_5b98f183-6d4a-4e12-afce-15857abb613f"
      unitRef="usd">9888000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzUtNy0xLTEtMA_6527cee8-8fde-4855-b9ed-bf3f034ef6a1"
      unitRef="usd">11111000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i26f8b07f1f764033b4134e05692ff0ac_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzYtMS0xLTEtMA_439c8f9f-f2e5-4592-aa90-5c456fab2bae"
      unitRef="usd">299000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="id929781b55584412b6f4431b0b5bd851_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzYtMy0xLTEtMA_3ca2393a-19b1-4728-93da-e004ae4fb8b8"
      unitRef="usd">288000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i3f6eb2d5664444aa842e42306985af11_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzYtNS0xLTEtMA_669ea7e6-9d4c-4191-8070-8c69340a6a8d"
      unitRef="usd">0</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzYtNy0xLTEtMA_7a502254-91bb-4a33-8c8a-13044179b2d7"
      unitRef="usd">587000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i810c02ac14e2453192fce078e63e3fc4_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzctMS0xLTEtMA_63a92461-2162-4efd-88b0-26f8e2569bc9"
      unitRef="usd">729000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i88566957607e43bc94bc091efcdf8b85_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzctMy0xLTEtMA_64834d61-d2c2-4d34-aeba-3d343453529f"
      unitRef="usd">1888000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i436f7e27145843c49802c37ee5fadab3_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzctNS0xLTEtMA_eda676f1-091e-4a1b-a680-b6f8841184aa"
      unitRef="usd">-58570000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo1N2MwMjk1YjA0MWY0ZGVlYjRmYmY4YmQxY2NjNWM3NC90YWJsZXJhbmdlOjU3YzAyOTViMDQxZjRkZWViNGZiZjhiZDFjY2M1Yzc0XzctNy0xLTEtMA_fa3b1bf0-fb3f-4eae-a273-240578d4ab98"
      unitRef="usd">-55953000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <brc:OtherComprehensiveIncomeTaxTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90ZXh0cmVnaW9uOmU2NDQ3YzIwOGM0NzRmNjI5OTIwODg4MmRhMmNlMWUwXzEzODY_5ffb2f39-d2e7-40ad-84a4-f9cd9e9d7f0b">&lt;div style="margin-top:9pt;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;The following table illustrates the income tax (expense) benefit on the components of other comprehensive income (loss):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:60.303%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.039%"/&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="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:9pt;font-weight:400;line-height:100%"&gt;Income tax (expense) benefit related to items of other comprehensive income (loss):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash flow hedges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(123)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;283&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Pension and other post-retirement benefits&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:9pt;font-weight:400;line-height:100%"&gt;95&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;229&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;164&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income tax adjustments and currency translation&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:9pt;font-weight:400;line-height:100%"&gt;(378)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(337)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(972)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax (expense) benefit related to items of other comprehensive income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(406)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;175&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(753)&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;</brc:OtherComprehensiveIncomeTaxTableTextBlock>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzMtMi0xLTEtMA_46116a8b-4b2a-42b4-b7d9-14d45149cd41"
      unitRef="usd">123000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzMtNC0xLTEtMA_19f51bc4-e04a-4719-8853-10c4310ad077"
      unitRef="usd">-283000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzMtNi0xLTEtMA_b0868b0d-e472-436f-9d94-787eb6954dfc"
      unitRef="usd">-55000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzQtMi0xLTEtMA_af1f7a77-187a-44c7-a456-cd95cdb3ffc6"
      unitRef="usd">95000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzQtNC0xLTEtMA_a26e6338-9e43-472a-b74a-66f5344f8cb6"
      unitRef="usd">229000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzQtNi0xLTEtMA_cc083084-2b03-4cfc-9cf5-1e46e498c10f"
      unitRef="usd">164000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzUtMi0xLTEtMA_a7d0aff5-0d3e-40e0-a049-190d4a7c523b"
      unitRef="usd">378000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzUtNC0xLTEtMA_9ae34706-1f91-4846-b4dc-24ada6e4f0a1"
      unitRef="usd">337000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzUtNi0xLTEtMA_c5e1ee51-046a-4750-a4ed-29c33e4d0067"
      unitRef="usd">972000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzctMi0xLTEtMA_be7df8c0-a806-48d3-a5c7-5121b458fac3"
      unitRef="usd">406000</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzctNC0xLTEtMA_ae97b6a1-87ef-4693-98a2-003f7bbbea14"
      unitRef="usd">-175000</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xMzkvZnJhZzplNjQ0N2MyMDhjNDc0ZjYyOTkyMDg4ODJkYTJjZTFlMC90YWJsZTo0MmE4ZTQxNDhiY2I0Y2Y3OTYyZWFlOThmZmQwNTk4My90YWJsZXJhbmdlOjQyYThlNDE0OGJjYjRjZjc5NjJlYWU5OGZmZDA1OTgzXzctNi0xLTEtMA_29b3a094-d162-4df8-ad46-b2f50b4881b7"
      unitRef="usd">753000</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDIvZnJhZzoyNWU1N2ZmY2MzNWY0YTc1YTRkNTg2YjJmYzBlYTNkOC90ZXh0cmVnaW9uOjI1ZTU3ZmZjYzM1ZjRhNzVhNGQ1ODZiMmZjMGVhM2Q4XzU4MDU_ace4789a-780e-4ce5-a6c4-1d01d5f92add">Revenue Recognition&lt;div style="margin-top:9pt;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;The Company recognizes revenue when control of the product or service transfers to the customer at an amount that represents the consideration expected to be received in exchange for those products and services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Nature of Products &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company&#x2019;s revenues are primarily from the sale of identification solutions and workplace safety products that are shipped and billed to customers. All revenue is from contracts with customers and is included in &#x201c;Net sales&#x201d; on the Consolidated Statements of Income. See Note 10 &#x201c;Segment Information&#x201d; for the Company&#x2019;s disaggregated revenue disclosure.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Performance Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company&#x2019;s contracts with customers consist of purchase orders, which in some cases are governed by master supply or distributor agreements. For each contract, the Company considers the commitment to transfer tangible products, which are generally capable of being distinct, to be separate performance obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The majority of the Company's revenue is earned and recognized at a point in time through ship-and-bill performance obligations where the customer typically obtains control of the product upon shipment or delivery, depending on freight terms. The Company considers control to have transferred if legal title, physical possession, and the significant risks and rewards of ownership of the asset have transferred to the customer and the Company has a present right to payment. In almost all cases, control transfers once a product is shipped or delivered, as this is when the customer is able to direct and obtain substantially all of the remaining benefits associated with use of the asset.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Transaction Price and Variable Consideration&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Revenue is measured as the amount of consideration the Company expects to be entitled to in exchange for the transfer of product to a customer. The transaction price is generally the price stated in the contract specific for each item sold, adjusted for all applicable variable considerations. Variable consideration generally include discounts, returns, credits, rebates, or other allowances that reduce the transaction price. Certain discounts and price assurances are fixed and known at the time of sale. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company estimates the amount of variable consideration and reduces the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The expected value method is used to estimate expected returns and allowances based on historical experience. The most likely amount method is used to estimate customer rebates, which are offered retrospectively and typically defined in the master supply or distributor agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Payment Terms&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;While the Company&#x2019;s standard payment terms are net 30 days, the specific payment terms and conditions in its contracts with customers vary by type and location of the customer. Cash discounts may be offered to certain customers. The Company has payment terms in its contracts with customers of less than one year and has elected the practical expedient applicable to such contracts and does not consider the time value of money.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Warranties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company offers standard warranty coverage on substantially all products which provides the customer with assurance that the product will function as intended. This standard warranty coverage is accounted for as an assurance warranty and is not considered to be a separate performance obligation. The Company records a liability for product warranty obligations at the time of sale based on historical warranty experience that is included in cost of goods sold.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company also offers extended warranty coverage for certain products, which it accounts for as service warranties. In most cases, the extended service warranty is included in the sales price of the product and is not sold separately. The Company considers the extended service warranty to be a separate performance obligation and allocates a portion of the transaction price to the service warranty based on the estimated stand-alone selling price. At the time of sale, the extended warranty transaction price is recorded as deferred revenue on the Consolidated Balance Sheets and is recognized on a straight-line basis over the life of the service warranty period. The deferred revenue is considered a contract liability as the Company has a right to payment at the time the product with the related extended service warranty is shipped or delivered and therefore, payment is received in advance of the Company's performance. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Contract Balances&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The balance of contract liabilities associated with service warranty performance obligations was $2,519 and $2,559 as of July&#160;31, 2021 and 2020, respectively. This also represents the amount of unsatisfied performance obligations related to contracts that extend beyond one year. The current portion and non-current portion of contract liabilities are included in &#x201c;Other current liabilities&#x201d; and &#x201c;Other liabilities," respectively, on the accompanying Consolidated Balance Sheets. During the fiscal year ended July&#160;31, 2021, the Company recognized revenue of $1,175 that was included in the contract liability balance at the beginning of the period from the amortization of extended service warranties. Of the contract liability balance outstanding at July&#160;31, 2021, the Company expects to recognize 41% by the end of fiscal 2022, an additional 28% by the end of fiscal 2023, and the balance thereafter.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Costs of Obtaining a Contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company expenses incremental direct costs of obtaining a contract (e.g., sales commissions) when incurred because the amortization period is generally&#160;twelve months&#160;or less. Contract costs are included in "Selling, general and administrative expense" on the Consolidated Statements of Income.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDIvZnJhZzoyNWU1N2ZmY2MzNWY0YTc1YTRkNTg2YjJmYzBlYTNkOC90ZXh0cmVnaW9uOjI1ZTU3ZmZjYzM1ZjRhNzVhNGQ1ODZiMmZjMGVhM2Q4XzQ3MjI_754c429c-9d6c-441b-badf-84f86b46b3f9"
      unitRef="usd">2519000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDIvZnJhZzoyNWU1N2ZmY2MzNWY0YTc1YTRkNTg2YjJmYzBlYTNkOC90ZXh0cmVnaW9uOjI1ZTU3ZmZjYzM1ZjRhNzVhNGQ1ODZiMmZjMGVhM2Q4XzQ3Mjk_2db166ae-a0df-4b5f-b69b-e8806a623c3c"
      unitRef="usd">2559000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDIvZnJhZzoyNWU1N2ZmY2MzNWY0YTc1YTRkNTg2YjJmYzBlYTNkOC90ZXh0cmVnaW9uOjI1ZTU3ZmZjYzM1ZjRhNzVhNGQ1ODZiMmZjMGVhM2Q4XzUxNTE_97bda95e-740b-4954-b806-4f7d5afb1944"
      unitRef="usd">1175000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="ic58f74ffb8294043a48b871adc922b8e_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDIvZnJhZzoyNWU1N2ZmY2MzNWY0YTc1YTRkNTg2YjJmYzBlYTNkOC90ZXh0cmVnaW9uOjI1ZTU3ZmZjYzM1ZjRhNzVhNGQ1ODZiMmZjMGVhM2Q4XzUzNzc_611c5f01-8dee-4fad-a0dc-38ead50a1919"
      unitRef="rate">0.41</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="i25635290191c4316a481656ae6f1bb48_I20230731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDIvZnJhZzoyNWU1N2ZmY2MzNWY0YTc1YTRkNTg2YjJmYzBlYTNkOC90ZXh0cmVnaW9uOjI1ZTU3ZmZjYzM1ZjRhNzVhNGQ1ODZiMmZjMGVhM2Q4XzU0MTk_bb104d0a-332d-496c-b9b5-7f54dd7948de"
      unitRef="rate">0.28</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90ZXh0cmVnaW9uOmI5Mjk0MWZkNDZjOTRhMjM5ZDFkN2ZmNDFhNTA4ZWMwXzc5MA_fae2fd16-bd7b-4b9d-b3d3-d45637048c8d">Segment Information&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is organized and managed on a global basis within&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; three operating segments, Identification Solutions ("IDS" or "ID Solutions"), Workplace Safety ("WPS"), and People Identification&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; ("PDC"), which aggregate into two reportable segments that are organized around businesses with consistent products and services: IDS and WPS. The IDS and PDC operating segments aggregate into the IDS reporting segment, while the WPS reporting segment is comprised solely of the Workplace Safety operating segment. The Company evaluates short-term segment performance based on segment profit and customer sales. Impairment charges, interest expense, investment and other income, income taxes, equity in losses of unconsolidated affiliate, and certain corporate administrative expenses are excluded when evaluating segment performance.&lt;/span&gt;&lt;div style="margin-top:9pt;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;Following is a summary of segment information as of and for the years ended July&#160;31, 2021, 2020 and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:60.303%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.039%"/&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:9pt;font-weight:700;line-height:100%"&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:9pt;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="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Americas&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;551,938&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;532,357&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;577,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Europe&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:9pt;font-weight:400;line-height:100%"&gt;191,854&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;165,490&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;193,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Asia&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:9pt;font-weight:400;line-height:100%"&gt;97,716&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;86,860&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;92,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;841,508&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;784,707&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;863,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Workplace Safety:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,814&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;92,513&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;98,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Europe&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:9pt;font-weight:400;line-height:100%"&gt;163,356&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;152,407&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;150,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Australia&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:9pt;font-weight:400;line-height:100%"&gt;54,020&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;51,672&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;48,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;303,190&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;296,592&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;297,545&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company:&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:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Americas&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;637,752&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;624,870&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;675,944&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Europe&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:9pt;font-weight:400;line-height:100%"&gt;355,210&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;317,897&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;344,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Asia-Pacific&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:9pt;font-weight:400;line-height:100%"&gt;151,736&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;138,532&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;140,369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,144,698&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,081,299&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,160,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation &amp;amp; amortization:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;22,248&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,745&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;3,235&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,692&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;25,483&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;23,437&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;23,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment profit:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;169,238&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;150,639&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;164,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;22,754&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;21,019&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;23,025&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;191,992&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;171,658&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;187,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,079,331&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;737,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;740,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;151,090&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;187,234&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;137,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate&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:9pt;font-weight:400;line-height:100%"&gt;147,335&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;217,643&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;279,072&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,377,756&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,142,466&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,157,308&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expenditures for property, plant &amp;amp; equipment:&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:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,262&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;17,637&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;17,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;6,927&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;9,640&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;14,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Following is a reconciliation of segment profit to income before income taxes and losses of unconsolidated affiliate for the years ended July&#160;31, 2021, 2020 and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding: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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July 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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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-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:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total profit from reportable segments&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;191,992&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;171,658&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;187,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Unallocated costs:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Administrative costs&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:9pt;font-weight:400;line-height:100%"&gt;(24,865)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(19,814)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(25,550)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Impairment charges&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(13,821)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment and other income&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:9pt;font-weight:400;line-height:100%"&gt;4,333&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;5,079&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;5,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(437)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,166)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,830)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes and losses of unconsolidated affiliate&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;171,023&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;140,936&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;164,644&#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:12pt"&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="18" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1) Of the total $13,821 impairment charges recognized in the year ended July 31, 2020, $11,029 related to the WPS segment and $2,792 related to the IDS segment.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.179%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Revenues*&lt;br/&gt;Years Ended July&#160;31,&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;Long-Lived Assets**&lt;br/&gt;As of July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Geographic information:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;642,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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;627,160&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;674,924&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;560,405&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;361,005&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;365,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;565,956&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;509,530&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;546,923&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;309,686&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;234,330&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;191,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Eliminations&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:9pt;font-weight:400;line-height:100%"&gt;(63,526)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(55,391)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(61,202)&lt;/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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consolidated total&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,144,698&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,081,299&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,160,645&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;870,091&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;595,335&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;557,158&#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:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="39" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;*      Revenues are attributed based on country of origin.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="39" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;**    Long-lived assets consist of property, plant and equipment, goodwill, other intangible assets, and operating lease assets.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90ZXh0cmVnaW9uOmI5Mjk0MWZkNDZjOTRhMjM5ZDFkN2ZmNDFhNTA4ZWMwXzc5OQ_23433b99-ffc3-475d-83e9-a3f96b217c60">&lt;div style="margin-top:9pt;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;Following is a summary of segment information as of and for the years ended July&#160;31, 2021, 2020 and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:60.303%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.039%"/&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:9pt;font-weight:700;line-height:100%"&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:9pt;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="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Americas&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;551,938&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;532,357&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;577,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Europe&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:9pt;font-weight:400;line-height:100%"&gt;191,854&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;165,490&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;193,852&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Asia&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:9pt;font-weight:400;line-height:100%"&gt;97,716&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;86,860&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;92,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;841,508&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;784,707&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;863,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Workplace Safety:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,814&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;92,513&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;98,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Europe&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:9pt;font-weight:400;line-height:100%"&gt;163,356&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;152,407&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;150,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Australia&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:9pt;font-weight:400;line-height:100%"&gt;54,020&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;51,672&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;48,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;303,190&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;296,592&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;297,545&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company:&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:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Americas&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;637,752&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;624,870&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;675,944&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Europe&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:9pt;font-weight:400;line-height:100%"&gt;355,210&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;317,897&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;344,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%"&gt;Asia-Pacific&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:9pt;font-weight:400;line-height:100%"&gt;151,736&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;138,532&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;140,369&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,144,698&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,081,299&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,160,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation &amp;amp; amortization:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;22,248&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,745&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;3,235&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,692&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;25,483&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;23,437&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;23,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment profit:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;169,238&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;150,639&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;164,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;22,754&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;21,019&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;23,025&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;191,992&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;171,658&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;187,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,079,331&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;737,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;740,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;151,090&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;187,234&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;137,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate&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:9pt;font-weight:400;line-height:100%"&gt;147,335&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;217,643&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;279,072&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,377,756&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,142,466&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,157,308&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expenditures for property, plant &amp;amp; equipment:&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:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;ID Solutions&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,262&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;17,637&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;17,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;WPS&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:9pt;font-weight:400;line-height:100%"&gt;6,927&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;9,640&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;14,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Company&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1e3f6a2858a7418fb0174e10f9548662_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMtMi0xLTEtMA_2d43ad30-6acc-4fd5-a927-33f315890fb3"
      unitRef="usd">551938000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i93eb254e38304cc2bdb4e02f806bf03b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMtNC0xLTEtMA_f3b39f69-f4e1-472e-9a85-b3565d140101"
      unitRef="usd">532357000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia6045ce128f141279e998e52227b7b6d_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMtNi0xLTEtMA_9e92858e-1d1f-484d-b783-109a85e849d0"
      unitRef="usd">577156000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icfe58ed1c3034905a83786316ffda3eb_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzQtMi0xLTEtMA_016eb798-7e9a-4b40-863c-abfa3803f0c4"
      unitRef="usd">191854000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icd87998cb92946a18a84cbe591afcf0d_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzQtNC0xLTEtMA_7ac65c3f-1b47-43ba-95fc-15f0ce90e800"
      unitRef="usd">165490000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i509c22de3c3a402193fbc6fc28ca996b_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzQtNi0xLTEtMA_8347d61f-564d-48e2-96f7-e05129b0b5ff"
      unitRef="usd">193852000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0f1e36e400924276ab3e2c5be81e19c3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzUtMi0xLTEtMA_1b7331fe-da10-4e85-963c-9b579a65471c"
      unitRef="usd">97716000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibffa3d2097af4cae9425883ffbe9a525_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzUtNC0xLTEtMA_24c1cae2-ccbc-4e8e-96a8-1cb81248049b"
      unitRef="usd">86860000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i11a70bdd363d45d4be5e4b885c57929a_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzUtNi0xLTEtMA_406fdafe-d1aa-47ce-b4f0-33d2449cb8c6"
      unitRef="usd">92092000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i80924641c60441549e9a07b7f446ace9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzYtMi0xLTEtMA_eda9554e-e99f-4cdf-a5f4-a0aef160c130"
      unitRef="usd">841508000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzYtNC0xLTEtMA_687b7e29-d179-4dc9-ab0d-fbde4cbeb523"
      unitRef="usd">784707000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0404f29cbb8f43e9bb191d147190e04c_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzYtNi0xLTEtMA_7f61496a-0fc8-4fa3-93a1-5f324d7d5797"
      unitRef="usd">863100000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i13658cfe8454414f905c06b7196f7fa9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzgtMi0xLTEtMA_1dc9e74b-d3f2-4fce-b1e6-400c969fdc88"
      unitRef="usd">85814000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib021962a8731442f8bdbb9a45b49ccbb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzgtNC0xLTEtMA_a0f7ff77-7f6f-4806-9c7c-c6686c6093df"
      unitRef="usd">92513000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3b094d29650144b1b9bbf8c882ba37e9_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzgtNi0xLTEtMA_f9f587a0-27f2-487d-86d7-3e5301a7a3d8"
      unitRef="usd">98788000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i78cf7fea1c60472d8553b86940644068_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzktMi0xLTEtMA_e63bdbc6-4315-42ca-a4d0-2cbd8275843b"
      unitRef="usd">163356000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i99ef6bfe348649b1ac159065fba2f781_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzktNC0xLTEtMA_64c7fedc-4eb1-4bc7-bc8c-cb190a39609a"
      unitRef="usd">152407000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifbfa553349d946e2ba9c8a7a7c442b6b_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzktNi0xLTEtMA_73dcddbf-2289-47a8-b86f-6f358315faba"
      unitRef="usd">150480000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if366ad9a3b0c4ba5a4cded9d39a947c6_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzEwLTItMS0xLTA_018a138f-48d7-4d00-92de-d80b6c80a1c2"
      unitRef="usd">54020000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4042119656e04c56b8686e90bfa65d99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzEwLTQtMS0xLTA_079ed171-e283-4494-a960-a69847586e90"
      unitRef="usd">51672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie194b77ec31542308b8cf55b45e49c5b_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzEwLTYtMS0xLTA_43ede627-28fd-4ea1-90e9-3e456fb51928"
      unitRef="usd">48277000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzExLTItMS0xLTA_7d8f9151-74da-4afb-961a-feaf4bef27f9"
      unitRef="usd">303190000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzExLTQtMS0xLTA_d6cb0c81-55d7-457b-b3d3-dc6180a60b7c"
      unitRef="usd">296592000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1d0f676f242a43809a5fa4788cbb14ee_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzExLTYtMS0xLTA_8957ab9b-02e5-48d8-959d-34b499ca3b33"
      unitRef="usd">297545000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie582e0423d39453081ab18227cf3a8f3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzEzLTItMS0xLTA_8d7dbf35-96df-4f8c-82a8-d64b88ffd957"
      unitRef="usd">637752000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifc2574c96b2e4e579e8e54687ec0967a_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzEzLTQtMS0xLTA_f57d8d19-7353-4c8a-88bf-c88a38fbcbff"
      unitRef="usd">624870000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i25e03077dab94a01a9d221d47218a05d_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzEzLTYtMS0xLTA_3e8dc724-6363-4f49-9f15-05c109a61c3f"
      unitRef="usd">675944000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i01c8a748921b407496f67adaac164aef_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE0LTItMS0xLTA_f1f8c539-e8d5-4344-87f3-4abd3e2c1ee5"
      unitRef="usd">355210000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8785a0e9054041c99e6034f8ca881579_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE0LTQtMS0xLTA_a88e3039-c038-4c6d-9c4c-00b57fcdddee"
      unitRef="usd">317897000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7431c38b15354cfdb4ad9a5384cbb7c1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE0LTYtMS0xLTA_b89eae48-7210-4b99-b080-c054681946bb"
      unitRef="usd">344332000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9fddc4d5177b4fbcaa0bb4da5ec6c91d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE1LTItMS0xLTA_ccee9df3-1fdc-4367-bbd8-35e1280906cf"
      unitRef="usd">151736000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if7d755ae36014c7e93b957576d0ded20_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE1LTQtMS0xLTA_c9790573-22be-47b8-8b76-050a46619f66"
      unitRef="usd">138532000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i54ea4ae88d4948f8859ae42e485aee91_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE1LTYtMS0xLTA_d75eb959-cdb7-464c-b6ca-dcffbce95548"
      unitRef="usd">140369000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE2LTItMS0xLTA_6c73f78b-68b8-426b-90fe-2f1cd935bd89"
      unitRef="usd">1144698000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE2LTQtMS0xLTA_c93f03f4-b5c2-426b-8fbf-759fe6db5933"
      unitRef="usd">1081299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE2LTYtMS0xLTA_03f94943-ad0c-4ddc-87cd-f84b3b18824b"
      unitRef="usd">1160645000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i80924641c60441549e9a07b7f446ace9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE4LTItMS0xLTA_eb629b06-9841-4faa-a112-7a46692564b1"
      unitRef="usd">22248000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE4LTQtMS0xLTA_804b1f30-2765-470b-a38f-b6a01c0a94db"
      unitRef="usd">20745000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i0404f29cbb8f43e9bb191d147190e04c_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE4LTYtMS0xLTA_dd1127ed-54e4-4f67-944e-903c141ea1cf"
      unitRef="usd">21387000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE5LTItMS0xLTA_aeaac380-703b-4770-b34f-5922945a5aed"
      unitRef="usd">3235000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE5LTQtMS0xLTA_cdecdeef-54c5-44c3-ab80-4d2272ad482b"
      unitRef="usd">2692000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i1d0f676f242a43809a5fa4788cbb14ee_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzE5LTYtMS0xLTA_17320666-cfb5-418a-98ea-f15a41d6739a"
      unitRef="usd">2412000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIwLTItMS0xLTA_20d8197c-6ab2-40bf-8fc0-c08cfe89237a"
      unitRef="usd">25483000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIwLTQtMS0xLTA_e9ac8eaa-a248-4e9f-82ed-7ed4f87f7753"
      unitRef="usd">23437000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIwLTYtMS0xLTA_41ea8adf-e8dc-4b10-ab88-3d084ae77d97"
      unitRef="usd">23799000</us-gaap:DepreciationDepletionAndAmortization>
    <brc:ProfitForReportableSegments
      contextRef="i80924641c60441549e9a07b7f446ace9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIyLTItMS0xLTA_79a9d355-ca06-4081-8f7b-5dfc8ba96e7e"
      unitRef="usd">169238000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIyLTQtMS0xLTA_d4b4d030-4c21-4e72-bebc-b2d9db140f69"
      unitRef="usd">150639000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i0404f29cbb8f43e9bb191d147190e04c_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIyLTYtMS0xLTA_9b62391c-75b1-4130-ad7e-7569485bb351"
      unitRef="usd">164953000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIzLTItMS0xLTA_db165897-42b7-4982-9757-cc55ba7d275f"
      unitRef="usd">22754000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIzLTQtMS0xLTA_9570426e-2153-41bd-88d5-eac6307c2ed5"
      unitRef="usd">21019000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i1d0f676f242a43809a5fa4788cbb14ee_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzIzLTYtMS0xLTA_7086d1b1-abd0-4da1-a38c-831c7c11acfa"
      unitRef="usd">23025000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI0LTItMS0xLTA_eecf2ca6-4af5-40d5-aaab-423fc2ac0d16"
      unitRef="usd">191992000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI0LTQtMS0xLTA_61838b77-c84c-4954-83ad-b8a0b66d4f43"
      unitRef="usd">171658000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI0LTYtMS0xLTA_88a1d103-94e2-493c-9cd2-9c2162b8e979"
      unitRef="usd">187978000</brc:ProfitForReportableSegments>
    <us-gaap:Assets
      contextRef="i4f131f162a9d4e75b00c4762519da8a4_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI2LTItMS0xLTA_070d86c7-3ad3-40db-b9f6-fc613158e447"
      unitRef="usd">1079331000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iba972ab712814a66aaa831b7d1e67c97_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI2LTQtMS0xLTA_87e75772-e19e-4ead-9321-6d6038be7c96"
      unitRef="usd">737589000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i700c3a0dc63149d28d295faf29f02702_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI2LTYtMS0xLTA_233f45df-915b-429e-90ac-e540c6538e60"
      unitRef="usd">740437000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ib20a45fb2bc548029c192b8add302c21_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI3LTItMS0xLTA_4f54a7a9-d3d5-4710-9230-546a6114f1f2"
      unitRef="usd">151090000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id84b8a60ccfc4632b8fc4718336a9b5d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI3LTQtMS0xLTA_fa3bb52c-9f7f-43e7-b8b7-bb3f53017b3f"
      unitRef="usd">187234000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i95bde3217b6c48f9b8044b7b3d8a4616_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI3LTYtMS0xLTA_8e77478f-ba37-4d88-be5d-bfa7f2073a3b"
      unitRef="usd">137799000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ie9ce3c43e5704499bbc4280720c9b23b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI4LTItMS0xLTA_28f862cf-9b3e-485e-81f1-2241a6fcd2a0"
      unitRef="usd">147335000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i13a12b95d139486eb1d5b3e78c6f3cb1_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI4LTQtMS0xLTA_996c2d96-2734-4b67-bc27-b263927e3bba"
      unitRef="usd">217643000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i6c732af3b8414de6b1e820fa17a2a7dc_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI4LTYtMS0xLTA_636f0ee9-95da-47cb-92f7-c7e02b575b7a"
      unitRef="usd">279072000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI5LTItMS0xLTA_e106d508-beda-48aa-9791-e962a69491d6"
      unitRef="usd">1377756000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI5LTQtMS0xLTA_372afdb1-0901-48cb-af92-debf7d6b402e"
      unitRef="usd">1142466000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzI5LTYtMS0xLTA_53458494-face-4579-895a-2419fdc0c13c"
      unitRef="usd">1157308000</us-gaap:Assets>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i80924641c60441549e9a07b7f446ace9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMxLTItMS0xLTA_0c497717-26ef-4199-9275-713bf9067d4e"
      unitRef="usd">20262000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMxLTQtMS0xLTA_78af5c1b-dde2-41c7-8244-f343367c03d2"
      unitRef="usd">17637000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i0404f29cbb8f43e9bb191d147190e04c_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMxLTYtMS0xLTA_54d0fadd-af12-49a4-b468-5c69ec09bf6d"
      unitRef="usd">17849000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i15b9b64f5a964b12bde41e8e6f595d08_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMyLTItMS0xLTA_0e0dbfe0-8f9e-40a9-8820-bab2805675f6"
      unitRef="usd">6927000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMyLTQtMS0xLTA_aea8097e-121e-4de5-bb9d-ec3383ea351e"
      unitRef="usd">9640000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i1d0f676f242a43809a5fa4788cbb14ee_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMyLTYtMS0xLTA_b504ba88-5ebb-4c0d-99cb-a934d91343bd"
      unitRef="usd">14976000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMzLTItMS0xLTA_56224fc3-073f-4df5-919f-9af278932955"
      unitRef="usd">27189000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMzLTQtMS0xLTA_a3c93acb-1ccd-409e-8440-d09cf10f9f47"
      unitRef="usd">27277000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTpjM2NlODQwOGJkNDg0ZWI1YWVmN2YwM2RhMDJlMWY5MS90YWJsZXJhbmdlOmMzY2U4NDA4YmQ0ODRlYjVhZWY3ZjAzZGEwMmUxZjkxXzMzLTYtMS0xLTA_0addb6cb-0985-4f56-a6ac-772816beefea"
      unitRef="usd">32825000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90ZXh0cmVnaW9uOmI5Mjk0MWZkNDZjOTRhMjM5ZDFkN2ZmNDFhNTA4ZWMwXzc3Ng_5bda4b9d-a439-4531-951a-4158487c23d9">&lt;div style="margin-top:9pt;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;Following is a reconciliation of segment profit to income before income taxes and losses of unconsolidated affiliate for the years ended July&#160;31, 2021, 2020 and 2019:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding: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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July 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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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-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:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total profit from reportable segments&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;191,992&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;171,658&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;187,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Unallocated costs:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Administrative costs&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:9pt;font-weight:400;line-height:100%"&gt;(24,865)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(19,814)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(25,550)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Impairment charges&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(13,821)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment and other income&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:9pt;font-weight:400;line-height:100%"&gt;4,333&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;5,079&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;5,046&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(437)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,166)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,830)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes and losses of unconsolidated affiliate&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;171,023&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;140,936&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;164,644&#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:12pt"&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="18" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1) Of the total $13,821 impairment charges recognized in the year ended July 31, 2020, $11,029 related to the WPS segment and $2,792 related to the IDS segment.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock>
    <brc:ProfitForReportableSegments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzItMS0xLTEtMA_eecf2ca6-4af5-40d5-aaab-423fc2ac0d16"
      unitRef="usd">191992000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzItMy0xLTEtMA_61838b77-c84c-4954-83ad-b8a0b66d4f43"
      unitRef="usd">171658000</brc:ProfitForReportableSegments>
    <brc:ProfitForReportableSegments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzItNS0xLTEtMA_88a1d103-94e2-493c-9cd2-9c2162b8e979"
      unitRef="usd">187978000</brc:ProfitForReportableSegments>
    <brc:AdministrativeCosts
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzQtMS0xLTEtMA_2b69e24a-6697-4adc-9f3f-4ac8d5449e4d"
      unitRef="usd">24865000</brc:AdministrativeCosts>
    <brc:AdministrativeCosts
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzQtMy0xLTEtMA_6ff4f98d-f7e0-4865-a685-b5e0459b9e03"
      unitRef="usd">19814000</brc:AdministrativeCosts>
    <brc:AdministrativeCosts
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzQtNS0xLTEtMA_81fca876-e828-4e9d-be39-5132cb6e2a75"
      unitRef="usd">25550000</brc:AdministrativeCosts>
    <us-gaap:AssetImpairmentCharges
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzUtMS0xLTEtMA_4fd59302-98e9-438a-a64d-1269821483c4"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzUtMy0xLTEtMA_134b7c9c-9bcc-474a-9e91-e437efd74be2"
      unitRef="usd">13821000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzUtNS0xLTEtMA_ce0b8a1d-2a23-411e-b7f5-b9a69fc1c826"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzctMS0xLTEtMA_c4ecf558-3ae7-44f7-84a7-fbac50e290da"
      unitRef="usd">4333000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzctMy0xLTEtMA_e14f0085-e1b0-4373-bc9b-73c38427363e"
      unitRef="usd">5079000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzctNS0xLTEtMA_0d8bf260-081c-488e-9682-12baf9212694"
      unitRef="usd">5046000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:InterestExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzgtMS0xLTEtMA_d380f587-38ab-4a05-9d2d-411e67612678"
      unitRef="usd">437000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzgtMy0xLTEtMA_b82f076b-ef5c-42ac-9e02-1417ac3c2fef"
      unitRef="usd">2166000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzgtNS0xLTEtMA_fd0bb7d7-84c6-425b-83af-2f8ed5649973"
      unitRef="usd">2830000</us-gaap:InterestExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzktMS0xLTEtMA_7c710f9d-439c-4f02-9c09-5e7725a349de"
      unitRef="usd">171023000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzktMy0xLTEtMA_c9dd8557-4e64-464a-9b5c-7a52c750d6d3"
      unitRef="usd">140936000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzktNS0xLTEtMA_9f7d14ab-88ad-4797-b18d-e576060f4084"
      unitRef="usd">164644000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:AssetImpairmentCharges
      contextRef="icd7a79d0c4e74e2fb2e2c0837886fd99_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzEwLTAtMS0xLTExMjY5L3RleHRyZWdpb246ZTk5YjM2MWU3NmY5NGNkNjk3NjM0MjRmZmU0NTRiMjNfMTA5OTUxMTYyNzk0MQ_7280da66-5f15-4c3f-93ce-78bdd6d1fd27"
      unitRef="usd">11029000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i99215707bd224846870f7789b8342016_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZToxZjEzOGZkYjg1MzE0NTEyODk1Y2JlNDIxYjkzNGViMy90YWJsZXJhbmdlOjFmMTM4ZmRiODUzMTQ1MTI4OTVjYmU0MjFiOTM0ZWIzXzEwLTAtMS0xLTExMjY5L3RleHRyZWdpb246ZTk5YjM2MWU3NmY5NGNkNjk3NjM0MjRmZmU0NTRiMjNfMTA5OTUxMTYyNzk1MQ_2e6b3810-f111-4e0a-8033-d5d915fae47f"
      unitRef="usd">2792000</us-gaap:AssetImpairmentCharges>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90ZXh0cmVnaW9uOmI5Mjk0MWZkNDZjOTRhMjM5ZDFkN2ZmNDFhNTA4ZWMwXzc3MQ_6ece5b64-6386-41f6-a55f-dc98bcdbfe75">&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.179%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Revenues*&lt;br/&gt;Years Ended July&#160;31,&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;Long-Lived Assets**&lt;br/&gt;As of July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Geographic information:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;642,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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;627,160&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;674,924&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;560,405&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;361,005&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;365,205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;565,956&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;509,530&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;546,923&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;309,686&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;234,330&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;191,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Eliminations&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:9pt;font-weight:400;line-height:100%"&gt;(63,526)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(55,391)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(61,202)&lt;/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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consolidated total&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,144,698&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,081,299&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,160,645&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;870,091&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;595,335&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;557,158&#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:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="39" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;*      Revenues are attributed based on country of origin.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="39" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;**    Long-lived assets consist of property, plant and equipment, goodwill, other intangible assets, and operating lease assets.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie045b897ad1640f49b1a0e762e1ad537_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzMtMi0xLTEtMA_71c5f841-68ed-4315-87d4-cace38d02ec9"
      unitRef="usd">642268000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i29437d4212b74c64ac31b769d1893ae7_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzMtNC0xLTEtMA_d2c37581-4a81-4580-b98f-2ad42d787705"
      unitRef="usd">627160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i84746852e8ad436195fc831851765294_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzMtNi0xLTEtMA_7897e13e-6f2c-4d50-9ebd-28f1fddca283"
      unitRef="usd">674924000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="i8fdfb74f46ab488d98c540c7978160ac_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzMtOC0xLTEtMA_3a633b2d-452c-4075-a350-55c5cd2a22e2"
      unitRef="usd">560405000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ia53f44945501448c967dec4880d7b59e_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzMtMTAtMS0xLTA_4bdcdc96-b9bc-47c8-b62d-064b7e6e4fc8"
      unitRef="usd">361005000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ia67a6b78cc6748bba38ecbbea5779b68_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzMtMTItMS0xLTA_85dedd00-c471-4bbe-ab2c-9ecf8b4e7161"
      unitRef="usd">365205000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0c76f513ede64950a67117702a067ee0_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzQtMi0xLTEtMA_baa79ae6-018a-4064-b4a0-c89255e7d350"
      unitRef="usd">565956000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i52e39d443d594fa0a28faf7f2aa8c05f_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzQtNC0xLTEtMA_0bbbeafd-6746-47f0-ad9a-0435e03829b2"
      unitRef="usd">509530000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id2eeb8bce973453c87b67fd1c5769cd2_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzQtNi0xLTEtMA_80e7d0f1-9f8f-4f8c-8b05-04b03c77ecaf"
      unitRef="usd">546923000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="i2769872ad0984bf6b28912b8955a4ffc_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzQtOC0xLTEtMA_2c10c015-19c8-42da-9a22-bf3c3b091d60"
      unitRef="usd">309686000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ia64838bb0b394abc8fac131ffe96b028_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzQtMTAtMS0xLTA_ffc65e4b-5e62-4116-a3d0-69a3813ae678"
      unitRef="usd">234330000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i960bdc2d2c514c6d82a284133eb5dd6e_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzQtMTItMS0xLTA_40806399-90bc-4aac-8f2c-cf359dec2cba"
      unitRef="usd">191953000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i68cdea0d517b45ef86cc24c995068a95_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzUtMi0xLTEtMA_16bae8f7-9324-46d8-9844-285ef7ef185d"
      unitRef="usd">-63526000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i90ae7142857b48e4a3fe46d2fb4ae263_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzUtNC0xLTEtMA_4997a5e4-5646-49df-95a5-06fd32e6ca49"
      unitRef="usd">-55391000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieb6a13430d87400eb69f6401e4bdad9d_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzUtNi0xLTEtMA_3307f101-51e3-40fd-a635-de10c8aefea0"
      unitRef="usd">-61202000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="i50249781d8a84142bdacd34520abd436_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzUtOC0xLTEtMA_5761527e-7f85-49ea-afba-580b0200cb14"
      unitRef="usd">0</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i978261c322414eed964101db8dd0dd38_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzUtMTAtMS0xLTA_cbc354a7-2416-44cf-b91d-f4c5ecb012df"
      unitRef="usd">0</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i33ec8086fe494592b49577d84389b5d9_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzUtMTItMS0xLTA_c06484a5-8779-4fed-a133-86a308468e13"
      unitRef="usd">0</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzYtMi0xLTEtMA_9d660d84-4b54-4210-ac31-2da3a1f92d11"
      unitRef="usd">1144698000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzYtNC0xLTEtMA_26ee08e8-b6f9-4998-bac5-053f103284a3"
      unitRef="usd">1081299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzYtNi0xLTEtMA_e08a329e-6544-4970-a832-3b035df2cefe"
      unitRef="usd">1160645000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzYtOC0xLTEtMA_7e7ab58d-3cce-4864-bc66-a1fd398440b5"
      unitRef="usd">870091000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzYtMTAtMS0xLTA_d5d56b3c-3ae0-4463-8d62-a42ae075cfb0"
      unitRef="usd">595335000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDUvZnJhZzpiOTI5NDFmZDQ2Yzk0YTIzOWQxZDdmZjQxYTUwOGVjMC90YWJsZTo5OWY1M2FmZDE3Yzc0NDJkOTU4MzVhMTljYTdiMzFkNC90YWJsZXJhbmdlOjk5ZjUzYWZkMTdjNzQ0MmQ5NTgzNWExOWNhN2IzMWQ0XzYtMTItMS0xLTA_ec978916-32de-449b-8cde-d233ca45cafd"
      unitRef="usd">557158000</us-gaap:NoncurrentAssets>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0NjI_9a0a677e-5d06-4328-959c-660f02075a6e">&lt;div style="margin-top:9pt;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;Income before income taxes and losses of unconsolidated affiliate consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:52.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;59,504&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;69,433&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;55,077&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other Nations&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:9pt;font-weight:400;line-height:100%"&gt;111,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;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:9pt;font-weight:400;line-height:100%"&gt;71,503&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;109,567&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;171,023&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;140,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;164,644&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The increase in income before income taxes and losses of unconsolidated affiliate in Other Nations to $111,519 in fiscal 2021 from $71,503 in fiscal 2020 was primarily due to intercompany royalty transactions that occurred in fiscal 2020 which reduced Other Nations income before income taxes and losses of unconsolidated affiliate by $22,914. In addition, profitability improved in Other Nations in fiscal 2021 compared to fiscal 2020 as our global businesses continue to recover from the COVID-19 pandemic.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The decrease in income before income taxes and losses of unconsolidated affiliate to $71,503 in fiscal 2020 from $109,567 in fiscal 2019 was primarily due to intercompany royalty transactions that occurred in fiscal 2020 which which reduced Other Nations income before income taxes and losses of unconsolidated affiliate by $22,914. In addition, profitability decreased in Other Nations in fiscal 2020 compared to fiscal 2019 as our global businesses were impacted by reduced economic activity resulting from the COVID-19 pandemic.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Income tax expense consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:53.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.379%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current income tax expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,322&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,031&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,232&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other Nations&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:9pt;font-weight:400;line-height:100%"&gt;26,141&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;25,133&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;22,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;States (U.S.)&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:9pt;font-weight:400;line-height:100%"&gt;2,112&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,160&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;44,575&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;29,324&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;25,590&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred income tax (benefit) expense:&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 #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2,662)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,072&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,451&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other Nations&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:9pt;font-weight:400;line-height:100%"&gt;(5,938)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,065)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(667)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;States (U.S.)&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:9pt;font-weight:400;line-height:100%"&gt;(365)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align: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:9pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,965)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,003)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total income tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The tax effects of temporary differences are as follows as of July 31, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.670%"/&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:9pt;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="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:9pt;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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Assets&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:9pt;font-weight:700;line-height:100%"&gt;Liabilities&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventories&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,143&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(51)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,092&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee compensation and benefits&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:9pt;font-weight:400;line-height:100%"&gt;8,570&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,570&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable&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:9pt;font-weight:400;line-height:100%"&gt;1,433&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,433&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fixed assets&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:9pt;font-weight:400;line-height:100%"&gt;3,479&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(7,292)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(3,813)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible 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:9pt;font-weight:400;line-height:100%"&gt;996&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(51,987)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(50,991)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred and equity-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;8,069&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,069&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Postretirement benefits&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:9pt;font-weight:400;line-height:100%"&gt;2,359&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(166)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,193&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Tax credit and net operating loss carry-forwards&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:9pt;font-weight:400;line-height:100%"&gt;60,238&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;60,238&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowances&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:9pt;font-weight:400;line-height:100%"&gt;(51,069)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(51,069)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other, 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:9pt;font-weight:400;line-height:100%"&gt;13,698&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(5,282)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;8,416&#160;&lt;/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 19pt 2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(64,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,862)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:52.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.670%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Assets&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:9pt;font-weight:700;line-height:100%"&gt;Liabilities&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventories&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,385&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(58)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,327&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee compensation and benefits&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:9pt;font-weight:400;line-height:100%"&gt;3,339&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(72)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3,267&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable&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:9pt;font-weight:400;line-height:100%"&gt;1,518&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,518&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fixed assets&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:9pt;font-weight:400;line-height:100%"&gt;3,663&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(7,285)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(3,622)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible 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:9pt;font-weight:400;line-height:100%"&gt;1,026&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(31,488)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(30,462)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred and equity-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;7,851&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,851&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Postretirement benefits&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:9pt;font-weight:400;line-height:100%"&gt;3,002&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(31)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,971&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Tax credit and net operating loss carry-forwards&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:9pt;font-weight:400;line-height:100%"&gt;56,447&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;56,447&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowances&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:9pt;font-weight:400;line-height:100%"&gt;(58,809)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(58,809)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other, 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:9pt;font-weight:400;line-height:100%"&gt;11,786&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(4,715)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;7,071&#160;&lt;/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 19pt 2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,208&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(43,649)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(9,441)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Tax credit carry-forwards as of July&#160;31, 2021 consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:54pt;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;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Foreign net operating loss carry-forwards of $102,847, of which $90,475 have no expiration date and the remainder of which expire from 2022 to 2038.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:54pt;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;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;State net operating loss carry-forwards of $23,164, which expire in 2032.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:54pt;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;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Foreign tax credit carry-forwards of $22,141, which expire from 2022 to 2031.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:54pt;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;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;State R&amp;amp;D credit carry-forwards of $11,481, which expire from 2022 to 2036.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Rate Reconciliation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;A reconciliation of the income tax rate computed by applying the statutory U.S. federal income tax rate to income before income taxes and losses of unconsolidated affiliate to the total income tax expense is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.284%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Tax at statutory rate&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:9pt;font-weight:400;line-height:100%"&gt;21.0&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21.0&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21.0&#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:9pt;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:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International rate differential&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;2.3&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.0&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Adjustments to tax accruals and reserves&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;3.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(3.6)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development tax credits and domestic manufacturer&#x2019;s deduction&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:9pt;font-weight:400;line-height:100%"&gt;(1.6)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1.6)&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowance against foreign net operating loss carry-forwards&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(3)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(4.8)&lt;/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:9pt;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:9pt;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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.2&#160;&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred tax and other adjustments, 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:9pt;font-weight:400;line-height:100%"&gt;0.6&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.3&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax rate&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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20.8&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20.1&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20.3&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;Represents the foreign income tax rate differential when compared to the U.S. statutory income tax rate for the years ended July 31, 2021, 2020, and 2019.&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;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;The years ended July 31, 2021, 2020, and 2019, include reductions of uncertain tax positions resulting from the closure of audits and lapses in statues of limitations. The year ended July 31, 2021 was impacted by the recording of reserves for uncertain tax provisions.&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;(3)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;The year ended July 31, 2021 includes a reduction in a previously recorded valuation allowance against certain foreign net operating loss carry-forwards.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Uncertain Tax Positions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company follows the guidance in ASC 740, "Income Taxes" regarding uncertain tax positions. The guidance requires application of a more-likely-than-not threshold to the recognition and de-recognition of income tax positions.  A reconciliation of unrecognized tax benefits (excluding interest and penalties) is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.444%"/&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July&#160;31, 2018&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,430&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to the current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions for tax positions of prior years &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:9pt;font-weight:400;line-height:100%"&gt;612&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reductions for tax positions of prior years&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:9pt;font-weight:400;line-height:100%"&gt;(378)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapse of statute of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(8,140)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative translation adjustments and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(201)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;14,841&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to the current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions for tax positions of prior years &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:9pt;font-weight:400;line-height:100%"&gt;1,295&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reductions for tax positions of prior years&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:9pt;font-weight:400;line-height:100%"&gt;(5,087)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapse of statute of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(117)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative translation adjustments and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(108)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,622&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to the current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,664&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions for tax positions of prior years&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;3,940&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reductions for tax positions of prior years&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:9pt;font-weight:400;line-height:100%"&gt;(365)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapse of statute of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(159)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative translation adjustments and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;210&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;Includes acquisitions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Of the $21,912 of unrecognized tax benefits, if recognized, $18,717 would affect the Company's income tax rate. The Company has classified $15,427 and $8,931, excluding interest and penalties, of the reserve for uncertain tax positions in "Other liabilities" on the Consolidated Balance Sheets as of July&#160;31, 2021 and 2020, respectively. The Company has classified $6,485 and $4,691, excluding interest and penalties, as a reduction of long-term deferred income tax assets on the accompanying Consolidated Balance Sheets as of July&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Interest expense is recognized on the amount of potentially underpaid taxes associated with the Company's tax positions, beginning in the first period in which interest starts accruing under the respective tax law and continuing until the tax positions are settled. The Company recognized interest (expense) and benefits of ($596), $372, and $1,013 on the reserve for uncertain tax positions during the years ended July&#160;31, 2021, 2020, and 2019, respectively. The Company also recognized (expenses) and benefits related to penalties of ($595), $96, and $2,357 during the years ended July&#160;31, 2021, 2020, and 2019, respectively. These amounts are net of reversals due to reductions for tax positions of prior years, statute of limitations, and settlements. At July&#160;31, 2021 and 2020, the Company had $2,297 and $1,354, respectively, accrued for interest on unrecognized tax benefits. Penalties are accrued if the tax position does not meet the minimum statutory threshold to avoid the payment of a penalty. At July&#160;31, 2021 and 2020, the Company had $2,098 and $658, respectively, accrued for penalties on unrecognized tax benefits. Interest expense and penalties are recorded as a component of "Income tax expense" in the Consolidated Statements of Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company estimates that it is reasonably possible that the unrecognized tax benefits may be reduced by $3,253 during the year ending July 31, 2022 as a result of the resolution of worldwide tax matters, tax audit settlements, amended tax filings, and/or the expiration of statute of limitations, all of which, if recognized, would result in an income tax benefit in the Consolidated Statements of Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;During the year ended July&#160;31, 2021, the Company recognized $295 of tax benefits (including interest and penalties) associated with the lapse of statutes of limitations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company and its subsidiaries file income tax returns in the U.S., various states, and foreign jurisdictions. The following table summarizes the open tax years for the Company's major jurisdictions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:76.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.685%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Jurisdiction&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:9pt;font-weight:700;line-height:100%"&gt;Open&#160;Tax&#160;Years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States &#x2014; Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;F&#x2019;19 &#x2014; F&#x2019;21&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0MjU_c61a860f-22a5-4d5c-a1c2-c9a703171996">&lt;div style="margin-top:9pt;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;Income before income taxes and losses of unconsolidated affiliate consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:52.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;59,504&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;69,433&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;55,077&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other Nations&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:9pt;font-weight:400;line-height:100%"&gt;111,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;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:9pt;font-weight:400;line-height:100%"&gt;71,503&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;109,567&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;171,023&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;140,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;164,644&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The increase in income before income taxes and losses of unconsolidated affiliate in Other Nations to $111,519 in fiscal 2021 from $71,503 in fiscal 2020 was primarily due to intercompany royalty transactions that occurred in fiscal 2020 which reduced Other Nations income before income taxes and losses of unconsolidated affiliate by $22,914. In addition, profitability improved in Other Nations in fiscal 2021 compared to fiscal 2020 as our global businesses continue to recover from the COVID-19 pandemic.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The decrease in income before income taxes and losses of unconsolidated affiliate to $71,503 in fiscal 2020 from $109,567 in fiscal 2019 was primarily due to intercompany royalty transactions that occurred in fiscal 2020 which which reduced Other Nations income before income taxes and losses of unconsolidated affiliate by $22,914. In addition, profitability decreased in Other Nations in fiscal 2020 compared to fiscal 2019 as our global businesses were impacted by reduced economic activity resulting from the COVID-19 pandemic.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzItMi0xLTEtMA_c1501c0b-d127-4154-b41e-819791558fde"
      unitRef="usd">59504000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzItNC0xLTEtMA_b5d796c8-1d43-4cea-a1e7-f1b167664134"
      unitRef="usd">69433000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzItNi0xLTEtMA_2e37b4c6-2711-4ed8-8c73-a3e450e0c34b"
      unitRef="usd">55077000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzMtMi0xLTEtMA_5a38db06-13d2-46c3-9e31-ea76fee61449"
      unitRef="usd">111519000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzMtNC0xLTEtMA_99fc47f9-b9b6-4d17-9009-60fc0e21a8bd"
      unitRef="usd">71503000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzMtNi0xLTEtMA_95a6a41a-8ef8-4062-90ab-77a636b87cc3"
      unitRef="usd">109567000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzQtMi0xLTEtMA_6744dd7e-6cf9-4fc7-b07a-ad1d1fa5f5a1"
      unitRef="usd">171023000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzQtNC0xLTEtMA_8fb2820a-1bba-4949-885e-0911d017c9e0"
      unitRef="usd">140936000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpmMmZhYmVhYTAzZWI0NDQ5YmNhNGNkZGZjMTI3OTgwOS90YWJsZXJhbmdlOmYyZmFiZWFhMDNlYjQ0NDliY2E0Y2RkZmMxMjc5ODA5XzQtNi0xLTEtMA_52d33530-cc56-4b45-acf1-43e68e79008f"
      unitRef="usd">164644000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2MzkzNzk_5a38db06-13d2-46c3-9e31-ea76fee61449"
      unitRef="usd">111519000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2MzkzOTE_99fc47f9-b9b6-4d17-9009-60fc0e21a8bd"
      unitRef="usd">71503000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <brc:IntercompanyRoyaltyTransactions
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2Mzk0MzU_9e553f3d-0545-4ecc-b97b-e51075ffa938"
      unitRef="usd">22914000</brc:IntercompanyRoyaltyTransactions>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2Mzk0MDI_99fc47f9-b9b6-4d17-9009-60fc0e21a8bd"
      unitRef="usd">71503000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2Mzk0MTM_95a6a41a-8ef8-4062-90ab-77a636b87cc3"
      unitRef="usd">109567000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <brc:IntercompanyRoyaltyTransactions
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2Mzk0MjU_9e553f3d-0545-4ecc-b97b-e51075ffa938"
      unitRef="usd">22914000</brc:IntercompanyRoyaltyTransactions>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0MzA_30ae8ac4-c867-43a8-893b-ad04a7d19c60">&lt;div style="margin-top:9pt;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;Income tax expense consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:53.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.379%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current income tax expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,322&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,031&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,232&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other Nations&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:9pt;font-weight:400;line-height:100%"&gt;26,141&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;25,133&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;22,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;States (U.S.)&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:9pt;font-weight:400;line-height:100%"&gt;2,112&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,160&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;44,575&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;29,324&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;25,590&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred income tax (benefit) expense:&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 #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2,662)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,072&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,451&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other Nations&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:9pt;font-weight:400;line-height:100%"&gt;(5,938)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,065)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(667)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;States (U.S.)&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:9pt;font-weight:400;line-height:100%"&gt;(365)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align: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:9pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,965)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,003)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total income tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzMtMi0xLTEtMA_913b081d-98d0-456b-a339-64ac5b1e402e"
      unitRef="usd">16322000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzMtNC0xLTEtMA_f71a690c-9c5c-418f-a785-bb227b49b33c"
      unitRef="usd">3031000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzMtNi0xLTEtMA_4adb9d43-f6c6-4bc3-9280-309b254284ff"
      unitRef="usd">2232000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzQtMi0xLTEtMA_a212ea84-d10a-4f2b-bd7a-beacd0822dd0"
      unitRef="usd">26141000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzQtNC0xLTEtMA_8b026a76-4553-4958-95b7-2e7faffb7712"
      unitRef="usd">25133000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzQtNi0xLTEtMA_24dab1de-2cbf-4a82-99a3-a2e4facdd55e"
      unitRef="usd">22445000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzUtMi0xLTEtMA_0c3721b2-7b6a-41ce-a8bc-a7334db3f6d0"
      unitRef="usd">2112000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzUtNC0xLTEtMA_2f088c32-5c76-4f7e-8811-b152853bcb0e"
      unitRef="usd">1160000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzUtNi0xLTEtMA_5974ef46-a871-426d-968b-ce6364a21a42"
      unitRef="usd">913000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzYtMi0xLTEtMA_81ddc116-c43b-47cb-950e-23cccb687b64"
      unitRef="usd">44575000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzYtNC0xLTEtMA_d1e66246-5b6d-47db-bf69-030873100b5f"
      unitRef="usd">29324000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzYtNi0xLTEtMA_a5aba115-1b32-47ea-91cb-19c704557f54"
      unitRef="usd">25590000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzgtMi0xLTEtMA_023d2875-9dc1-48f6-8b55-9249d6550679"
      unitRef="usd">-2662000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzgtNC0xLTEtMA_1abca1b8-d39e-435b-a8c9-73cd3394edc0"
      unitRef="usd">1072000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzgtNi0xLTEtMA_fa5d8687-6cda-43bf-9d70-8a5e6274fe7b"
      unitRef="usd">8451000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzktMi0xLTEtMA_c315a6f8-1931-4c34-8d00-61c3e65beac6"
      unitRef="usd">-5938000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzktNC0xLTEtMA_bd3de3fe-e133-4edf-b660-94342abcc4d3"
      unitRef="usd">-2065000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzktNi0xLTEtMA_8443a203-eb8b-43e8-ad9c-0352a98ce3be"
      unitRef="usd">-667000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzEwLTItMS0xLTA_1c5ed423-da6d-4531-af87-29a8886d8d2e"
      unitRef="usd">-365000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzEwLTQtMS0xLTA_001f1e9d-84c3-4f83-9ec3-e69d30e2fedf"
      unitRef="usd">-10000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzEwLTYtMS0xLTA_60e85abc-56a6-4ea9-b55b-6fc5f47c14d2"
      unitRef="usd">12000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzExLTItMS0xLTA_885bf86e-4b62-4cd9-a2c1-69143896876d"
      unitRef="usd">-8965000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzExLTQtMS0xLTA_e7ef9ed9-9a03-40bf-a292-9608dae8c14c"
      unitRef="usd">-1003000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzExLTYtMS0xLTA_fd7059f7-08c8-4a2c-9372-ab0725058662"
      unitRef="usd">7796000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzEyLTItMS0xLTA_a9cb8fc7-31ae-4d64-a530-994dfbbd3841"
      unitRef="usd">35610000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzEyLTQtMS0xLTA_6f3ba05d-4394-4c47-8096-b5f8db412afe"
      unitRef="usd">28321000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTplYWQ2M2FjZTlkM2Q0NTNjODI0MjFmYzliMDQ0MGNkNS90YWJsZXJhbmdlOmVhZDYzYWNlOWQzZDQ1M2M4MjQyMWZjOWIwNDQwY2Q1XzEyLTYtMS0xLTA_a5f4c20f-c8bc-4836-bbd4-46b243ecf81d"
      unitRef="usd">33386000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0NDM_091d71b9-04aa-49ec-b4ee-99a4a524e23f">&lt;div style="margin-top:9pt;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;The tax effects of temporary differences are as follows as of July 31, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.670%"/&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:9pt;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="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:9pt;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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Assets&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:9pt;font-weight:700;line-height:100%"&gt;Liabilities&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventories&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,143&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(51)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,092&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee compensation and benefits&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:9pt;font-weight:400;line-height:100%"&gt;8,570&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,570&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable&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:9pt;font-weight:400;line-height:100%"&gt;1,433&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,433&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fixed assets&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:9pt;font-weight:400;line-height:100%"&gt;3,479&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(7,292)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(3,813)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible 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:9pt;font-weight:400;line-height:100%"&gt;996&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(51,987)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(50,991)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred and equity-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;8,069&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,069&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Postretirement benefits&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:9pt;font-weight:400;line-height:100%"&gt;2,359&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(166)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,193&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Tax credit and net operating loss carry-forwards&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:9pt;font-weight:400;line-height:100%"&gt;60,238&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;60,238&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowances&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:9pt;font-weight:400;line-height:100%"&gt;(51,069)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(51,069)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other, 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:9pt;font-weight:400;line-height:100%"&gt;13,698&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(5,282)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;8,416&#160;&lt;/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 19pt 2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(64,778)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,862)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:52.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.670%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Assets&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:9pt;font-weight:700;line-height:100%"&gt;Liabilities&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventories&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,385&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(58)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,327&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee compensation and benefits&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:9pt;font-weight:400;line-height:100%"&gt;3,339&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(72)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3,267&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable&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:9pt;font-weight:400;line-height:100%"&gt;1,518&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,518&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fixed assets&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:9pt;font-weight:400;line-height:100%"&gt;3,663&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(7,285)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(3,622)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible 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:9pt;font-weight:400;line-height:100%"&gt;1,026&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(31,488)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(30,462)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred and equity-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;7,851&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,851&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Postretirement benefits&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:9pt;font-weight:400;line-height:100%"&gt;3,002&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(31)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,971&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Tax credit and net operating loss carry-forwards&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:9pt;font-weight:400;line-height:100%"&gt;56,447&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;56,447&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowances&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:9pt;font-weight:400;line-height:100%"&gt;(58,809)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(58,809)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other, 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:9pt;font-weight:400;line-height:100%"&gt;11,786&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(4,715)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;7,071&#160;&lt;/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 19pt 2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,208&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(43,649)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(9,441)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzAtMi0xLTEtMA_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzItMi0xLTEtMA_3171bdbd-c259-4729-bfab-33e92f801727"
      unitRef="usd">5143000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzItNC0xLTEtMA_7454fc23-2af0-4801-8436-b16ca93bfbeb"
      unitRef="usd">51000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzItNi0xLTEtMA_ee89e80e-96ca-4fb4-aa43-b4bef9011cc1"
      unitRef="usd">5092000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzQtMi0xLTEtMA_b567cef6-1aa2-4416-aae3-1db8c37406dc"
      unitRef="usd">8570000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <brc:DeferredTaxLiabilitiesTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzQtNC0xLTEtMA_7fc8c38d-3752-46b8-8b52-226677f5b59f"
      unitRef="usd">0</brc:DeferredTaxLiabilitiesTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzQtNi0xLTEtMA_04b8eee3-3b73-4687-a921-0ed4f4a61c1e"
      unitRef="usd">8570000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzUtMi0xLTEtMA_a7861ebc-71ad-4f27-ba77-1f6c17ff2d34"
      unitRef="usd">1433000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <brc:DeferredTaxLiabilitiesAccountsReceivable
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzUtNC0xLTEtMA_d5f77e3e-a7ce-470c-b9e5-6596deee37e7"
      unitRef="usd">0</brc:DeferredTaxLiabilitiesAccountsReceivable>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzUtNi0xLTEtMA_b459e8fd-1587-42fe-a9b6-1014331b9356"
      unitRef="usd">1433000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzYtMi0xLTEtMA_dd56eb2d-dc9d-434e-b84e-e706e01715e7"
      unitRef="usd">3479000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzYtNC0xLTEtMA_d95c1ec6-8fe0-4734-8997-6ead0e1f9240"
      unitRef="usd">7292000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i646bccb5d34342f8bd8508b070513d50_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzYtNi0xLTEtMA_6af40acb-0335-48a9-848f-ee2eea10cb59"
      unitRef="usd">3813000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzctMi0xLTEtMA_69072a7c-6f74-4a13-842f-3ce88d7c1329"
      unitRef="usd">996000</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzctNC0xLTEtMA_70c20fbb-86cd-44ce-94ea-05602b688ead"
      unitRef="usd">51987000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i646bccb5d34342f8bd8508b070513d50_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzctNi0xLTEtMA_34cd870a-a583-45b3-a8ae-5252fe51dab4"
      unitRef="usd">50991000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzgtMi0xLTEtMA_d9e0a303-c567-41c6-8958-bd2c03e711e9"
      unitRef="usd">8069000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <brc:DeferredTaxLiabilityDeferredExpenseDeferredCompensation
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzgtNC0xLTEtMA_15cc6153-92fd-46e6-940d-f17482ee9349"
      unitRef="usd">0</brc:DeferredTaxLiabilityDeferredExpenseDeferredCompensation>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzgtNi0xLTEtMA_51448c13-9db7-4f0e-a29b-6da5fc534964"
      unitRef="usd">8069000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzktMi0xLTEtMA_7377daa5-b431-40d6-9eec-a0b69cbcbacb"
      unitRef="usd">2359000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits>
    <brc:Deferredtaxliabilitiesdeferredtaxexpensepostretirementbenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzktNC0xLTEtMA_67459001-c039-44ed-b21c-ae42ff256807"
      unitRef="usd">166000</brc:Deferredtaxliabilitiesdeferredtaxexpensepostretirementbenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzktNi0xLTEtMA_6d271975-6a9e-4378-85e1-f89b336ab9fd"
      unitRef="usd">2193000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEwLTItMS0xLTA_b74490db-e65b-47be-99bb-b8d63b9a07a5"
      unitRef="usd">60238000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <brc:DeferredTaxLiabilitiesTaxCreditCarryforwardsAndNetOperatingLosses
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEwLTQtMS0xLTA_5f51ffb5-3fa1-4ece-be1a-024941bc61fc"
      unitRef="usd">0</brc:DeferredTaxLiabilitiesTaxCreditCarryforwardsAndNetOperatingLosses>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEwLTYtMS0xLTA_bf8bbe35-4b8b-48e7-b276-d5c0c8ff36aa"
      unitRef="usd">60238000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzExLTItMS0xLTA_78ca3740-6dd5-41f2-a912-3ca637dd6415"
      unitRef="usd">51069000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <brc:DeferredTaxLiabilityValuationAllowance
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzExLTQtMS0xLTA_feb61b94-eeee-4f62-908d-94f39a6fd8c0"
      unitRef="usd">0</brc:DeferredTaxLiabilityValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="id9b5e91b25e24dd89c80726aeb4d9e38_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzExLTYtMS0xLTA_f7eedbcc-a602-4de3-a1ec-872d2b1886c8"
      unitRef="usd">51069000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEyLTItMS0xLTA_1cb21232-c10c-45e6-a535-a0ed89b052c1"
      unitRef="usd">13698000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEyLTQtMS0xLTA_b605a33d-591a-4686-bfe6-f54cd57f4eac"
      unitRef="usd">5282000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther
      contextRef="i646bccb5d34342f8bd8508b070513d50_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEyLTYtMS0xLTA_e7799ae0-b30d-4948-bdc7-6dd4f68829d9"
      unitRef="usd">8416000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEzLTItMS0xLTA_82f7422d-fd74-40d5-82c6-103e335a33f8"
      unitRef="usd">52916000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEzLTQtMS0xLTA_43967701-5792-4b7d-894b-c5f68a1bb59f"
      unitRef="usd">64778000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i646bccb5d34342f8bd8508b070513d50_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTo4NzI5NzYzZWU0YmM0ZWM1YjkxOTM0YTRkNDZhMGE2NC90YWJsZXJhbmdlOjg3Mjk3NjNlZTRiYzRlYzViOTE5MzRhNGQ0NmEwYTY0XzEzLTYtMS0xLTA_5343a085-5838-4fb4-aa58-3e38a6041b44"
      unitRef="usd">11862000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzItMi0xLTEtMA_ed8c7760-3659-449e-8311-e26ad26354b2"
      unitRef="usd">4385000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzItNC0xLTEtMA_e22ae0bd-3f45-42bf-8fef-05ceddd17163"
      unitRef="usd">58000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzItNi0xLTEtMA_7b0d4f15-1020-469a-8754-a4c904610cca"
      unitRef="usd">4327000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzQtMi0xLTEtMA_76845545-789f-4ed4-9ab3-3717dc9e5e94"
      unitRef="usd">3339000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <brc:DeferredTaxLiabilitiesTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzQtNC0xLTEtMA_73ab3265-bb89-416a-abc4-7dc6c46b49d6"
      unitRef="usd">72000</brc:DeferredTaxLiabilitiesTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzQtNi0xLTEtMA_786f0bd6-6452-4534-88aa-6fce7919e615"
      unitRef="usd">3267000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzUtMi0xLTEtMA_6c7628a4-4141-49fb-b336-89df93823f66"
      unitRef="usd">1518000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <brc:DeferredTaxLiabilitiesAccountsReceivable
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzUtNC0xLTEtMA_302054c8-bb9e-442d-b41b-fc664104f5a5"
      unitRef="usd">0</brc:DeferredTaxLiabilitiesAccountsReceivable>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzUtNi0xLTEtMA_69d13cbd-c5dc-4f31-8455-baa524cad1c1"
      unitRef="usd">1518000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzYtMi0xLTEtMA_4aeffb53-622c-40a3-8918-c78cc1b9fbfa"
      unitRef="usd">3663000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzYtNC0xLTEtMA_d8ecf153-c837-4bd1-9096-fd241f684e36"
      unitRef="usd">7285000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i4616317ec0804d94b1bbf67d58d8b772_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzYtNi0xLTEtMA_c5852527-8faa-44ae-800e-13798bb4836e"
      unitRef="usd">3622000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzctMi0xLTEtMA_590c2463-0197-427c-b487-8f299447e0ca"
      unitRef="usd">1026000</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzctNC0xLTEtMA_1304a377-1983-4a32-b6a7-b38362a93e1e"
      unitRef="usd">31488000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzctNi0xLTEtMA_cd2b00d3-dad2-4a43-b145-4a586e896a8b"
      unitRef="usd">30462000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzgtMi0xLTEtMA_857c3604-4675-42b5-ab31-f6557a2c5ade"
      unitRef="usd">7851000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <brc:DeferredTaxLiabilityDeferredExpenseDeferredCompensation
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzgtNC0xLTEtMA_650fa567-4cc5-493f-8b9d-5390bb0f1bbf"
      unitRef="usd">0</brc:DeferredTaxLiabilityDeferredExpenseDeferredCompensation>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzgtNi0xLTEtMA_96f1313f-ceda-433e-8081-6841ae0411f3"
      unitRef="usd">7851000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzktMi0xLTEtMA_d6083008-68c7-448c-acbb-6903a4186e69"
      unitRef="usd">3002000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits>
    <brc:Deferredtaxliabilitiesdeferredtaxexpensepostretirementbenefits
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzktNC0xLTEtMA_199c9988-e607-4ae0-a5a2-126add0c3196"
      unitRef="usd">31000</brc:Deferredtaxliabilitiesdeferredtaxexpensepostretirementbenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzktNi0xLTEtMA_ebbaad03-02e9-467a-baa6-79dec6a050f4"
      unitRef="usd">2971000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEwLTItMS0xLTA_0317e2db-6554-44dd-9347-4886242a168f"
      unitRef="usd">56447000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <brc:DeferredTaxLiabilitiesTaxCreditCarryforwardsAndNetOperatingLosses
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEwLTQtMS0xLTA_8facbb33-f3b3-43d4-956f-31e7338dea86"
      unitRef="usd">0</brc:DeferredTaxLiabilitiesTaxCreditCarryforwardsAndNetOperatingLosses>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEwLTYtMS0xLTA_5f26a37d-d0e8-48c2-8297-67d638b138a9"
      unitRef="usd">56447000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzExLTItMS0xLTA_e247a60b-d191-420a-b8fa-8645c1edc9b0"
      unitRef="usd">58809000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <brc:DeferredTaxLiabilityValuationAllowance
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzExLTQtMS0xLTA_89a017a4-cc85-4b90-aa1c-b4b4cea52363"
      unitRef="usd">0</brc:DeferredTaxLiabilityValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="ib171ec0cbcfa4cce8d71296379af021d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzExLTYtMS0xLTA_d579716d-a3c8-45eb-88bf-624339311c81"
      unitRef="usd">58809000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEyLTItMS0xLTA_a2674289-e22a-4051-9f76-6037d9142d05"
      unitRef="usd">11786000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEyLTQtMS0xLTA_7c93b588-b05b-478a-a876-d6976e978816"
      unitRef="usd">4715000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther
      contextRef="i4616317ec0804d94b1bbf67d58d8b772_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEyLTYtMS0xLTA_ccbb25c0-778e-4455-a109-5fbd34a28121"
      unitRef="usd">7071000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEzLTItMS0xLTA_01e33f7c-9540-491e-b908-2fa2cae2c999"
      unitRef="usd">34208000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEzLTQtMS0xLTA_ec7ef803-ee42-46c4-845f-6da37ae87c4a"
      unitRef="usd">43649000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i567237db37ba4c9b8d6d04e0155b4526_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTphOGVhM2MzMTZmODM0YzU0OGI1ZWY4NzRhN2RjZmJjYS90YWJsZXJhbmdlOmE4ZWEzYzMxNmY4MzRjNTQ4YjVlZjg3NGE3ZGNmYmNhXzEzLTYtMS0xLTA_0256927c-1baa-4e06-8afe-ae057f29eaf7"
      unitRef="usd">9441000</us-gaap:DeferredTaxLiabilities>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzgwMQ_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i23def7a6e35e4844af0d22d281aa1b61_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzg3Ng_bb8dd0a9-cdca-4316-9ac1-a54b6108af11"
      unitRef="usd">102847000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration
      contextRef="i23def7a6e35e4844af0d22d281aa1b61_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzg4OQ_d620d43c-6557-4dcb-a1b1-b23f1de84a1a"
      unitRef="usd">90475000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration>
    <brc:ForeignOperatingLossCarryforwardExpirationDates
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTk1MTE2Mzk0NDQ_11157114-615e-4f1a-bf11-0888e8a54001">2022 to 2038</brc:ForeignOperatingLossCarryforwardExpirationDates>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i29dabd703ec648578ca90a29275467eb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwMTk_6d7dfa52-1eb5-49c7-bc6f-36f8aae65bdc"
      unitRef="usd">23164000</us-gaap:OperatingLossCarryforwards>
    <brc:StateNetOperatingLossCarryforwardsExpirationDates
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0MzE_0279f676-0637-47e7-84ab-a8693b5c1a8f">2032</brc:StateNetOperatingLossCarryforwardsExpirationDates>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="i23def7a6e35e4844af0d22d281aa1b61_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzEwOTI_792f4839-0531-4241-87fa-fc2443d2d88f"
      unitRef="usd">22141000</us-gaap:TaxCreditCarryforwardAmount>
    <brc:ForeignTaxCreditCarryforwardExpirationDates
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0Njg_e46f81ce-2a04-4b20-8fac-a7e6fac57dd6">2022 to 2031</brc:ForeignTaxCreditCarryforwardExpirationDates>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="i29dabd703ec648578ca90a29275467eb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzExNjM_56b8c5a1-e72a-4f38-9d5e-daf4c091ae35"
      unitRef="usd">11481000</us-gaap:TaxCreditCarryforwardAmount>
    <brc:StateResearchAndDevelopmentTaxCreditCarryforwardExpirationDates
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0MzI_c69fbfa3-34fc-471d-ad5a-671cdee95736">2022 to 2036</brc:StateResearchAndDevelopmentTaxCreditCarryforwardExpirationDates>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0NjU_f2ff33fc-f3f7-4a69-a196-4dfeebfacdfc">&lt;div style="margin-top:9pt;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;A reconciliation of the income tax rate computed by applying the statutory U.S. federal income tax rate to income before income taxes and losses of unconsolidated affiliate to the total income tax expense is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.284%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Years Ended July&#160;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:9pt;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="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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Tax at statutory rate&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:9pt;font-weight:400;line-height:100%"&gt;21.0&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21.0&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;21.0&#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:9pt;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:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International rate differential&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;2.3&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.0&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Adjustments to tax accruals and reserves&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;3.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(3.6)&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development tax credits and domestic manufacturer&#x2019;s deduction&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:9pt;font-weight:400;line-height:100%"&gt;(1.6)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1.6)&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowance against foreign net operating loss carry-forwards&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(3)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(4.8)&lt;/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:9pt;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:9pt;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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.2&#160;&lt;/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:9pt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred tax and other adjustments, 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:9pt;font-weight:400;line-height:100%"&gt;0.6&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2.0)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.3&#160;&lt;/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:9pt;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:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax rate&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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20.8&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20.1&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20.3&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;Represents the foreign income tax rate differential when compared to the U.S. statutory income tax rate for the years ended July 31, 2021, 2020, and 2019.&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;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;The years ended July 31, 2021, 2020, and 2019, include reductions of uncertain tax positions resulting from the closure of audits and lapses in statues of limitations. The year ended July 31, 2021 was impacted by the recording of reserves for uncertain tax provisions.&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;(3)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt"&gt;The year ended July 31, 2021 includes a reduction in a previously recorded valuation allowance against certain foreign net operating loss carry-forwards.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzItMi0xLTEtMA_16f8dd11-1a99-4116-a3a0-8745efea7fff"
      unitRef="rate">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzItNC0xLTEtMA_eb7b849e-4da3-4bd5-af92-2c9ee894886b"
      unitRef="rate">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzItNi0xLTEtMA_aa8dce3a-1a9e-4f6c-bae1-16099e0b3b15"
      unitRef="rate">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzQtMi0xLTEtMA_e537efe2-4bcf-470c-9bf4-fb8005f8e14c"
      unitRef="rate">0.023</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzQtNC0xLTEtMA_a637d0e0-ab62-4019-abf7-f8677b15b2de"
      unitRef="rate">0.051</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzQtNi0xLTEtMA_79ea8ff0-1fd6-4e5f-8b01-cc9d94117d02"
      unitRef="rate">0.020</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzgtMi0xLTEtNzYwMQ_0e023891-81b6-46d5-a934-b2c4dd1955e2"
      unitRef="rate">0.033</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzgtNC0xLTEtNzYwMQ_2ba6b00c-a2ad-48ec-adcc-4c42abfad442"
      unitRef="rate">-0.020</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzgtNi0xLTEtNzYwMQ_8d9c0600-b7f7-4090-a1cd-ea9d2a4901bc"
      unitRef="rate">-0.036</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzktMi0xLTEtMA_0f669d9e-fe8d-4206-a3f9-8e2213ee98ba"
      unitRef="rate">-0.016</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzktNC0xLTEtMA_2921ade2-fc2d-4c48-8779-be083b97493a"
      unitRef="rate">-0.020</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzktNi0xLTEtMA_ad671b09-3ede-4026-ae5a-7c363b77f632"
      unitRef="rate">-0.016</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzEwLTItMS0xLTA_7f30d220-76d5-4e63-a4b6-8a28fcf2394f"
      unitRef="rate">-0.048</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzEwLTQtMS0xLTA_34315f23-7ae2-40e4-9a25-e824d1b4a65e"
      unitRef="rate">0</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzEwLTYtMS0xLTA_95526473-4979-443a-b749-eb9fe1765620"
      unitRef="rate">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzExLTItMS0xLTA_37072a42-c2af-4fac-b9a0-4e4e5b8b3925"
      unitRef="rate">0.006</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzExLTQtMS0xLTA_03ccb3fe-ecaf-42cc-b83c-601fa2491ff6"
      unitRef="rate">-0.020</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzExLTYtMS0xLTA_997b1dda-a483-401b-a298-4207c59f7da0"
      unitRef="rate">0.023</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzEyLTItMS0xLTA_2ad6764a-48e0-4f1a-8860-375f2c5fece0"
      unitRef="rate">0.208</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzEyLTQtMS0xLTA_816abde3-5715-4c1e-ba1a-a9fdbfd3987d"
      unitRef="rate">0.201</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZToyMzljOTgwMTYxZmU0ZDg4ODJkNTg1NzUzZDg2ODZkYy90YWJsZXJhbmdlOjIzOWM5ODAxNjFmZTRkODg4MmQ1ODU3NTNkODY4NmRjXzEyLTYtMS0xLTA_0e5e756b-ae7a-4990-91a4-5cc73bb70f7c"
      unitRef="rate">0.203</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0NTc_d1e511f1-ca28-4ca8-8c73-a3af6e59ddd4">A reconciliation of unrecognized tax benefits (excluding interest and penalties) is as follows:&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:81.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.444%"/&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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July&#160;31, 2018&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,430&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to the current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions for tax positions of prior years &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:9pt;font-weight:400;line-height:100%"&gt;612&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reductions for tax positions of prior years&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:9pt;font-weight:400;line-height:100%"&gt;(378)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapse of statute of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(8,140)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative translation adjustments and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(201)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;14,841&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to the current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions for tax positions of prior years &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:9pt;font-weight:400;line-height:100%"&gt;1,295&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reductions for tax positions of prior years&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:9pt;font-weight:400;line-height:100%"&gt;(5,087)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapse of statute of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(117)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative translation adjustments and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(108)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,622&#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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to the current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,664&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions for tax positions of prior years&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;3,940&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reductions for tax positions of prior years&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:9pt;font-weight:400;line-height:100%"&gt;(365)&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapse of statute of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(159)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative translation adjustments and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;210&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i29174ebb22e8416bbfeb7d3a8f58b84e_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzAtMS0xLTEtMA_67edaf53-c0e8-4c49-a0f1-68a2ace54d8b"
      unitRef="usd">20430000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzEtMS0xLTEtMA_b8d90e93-6f20-4bce-8d86-cb9bd8cfc6bd"
      unitRef="usd">2518000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzItMS0xLTEtMA_07b69b2a-3d50-4af4-96ff-257d54186480"
      unitRef="usd">612000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzMtMS0xLTEtMA_6775a377-04d8-4105-8415-bc8cf3f81e6f"
      unitRef="usd">378000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzQtMS0xLTEtMA_8cb493bf-df09-480f-84af-e3b4fe856ffc"
      unitRef="usd">8140000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromForeignCurrencyTranslation
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzYtMS0xLTEtMA_7090ed4b-3a03-4c3d-9657-a01b20c665d7"
      unitRef="usd">201000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromForeignCurrencyTranslation>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i9f1c66f3db2e4b9490e3ee656e7f6047_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzctMS0xLTEtMA_81945caf-03ab-4891-98ff-8b31b6f0f716"
      unitRef="usd">14841000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzgtMS0xLTEtMA_4ed1203b-044a-4b10-b7cd-3ef1a3b65c01"
      unitRef="usd">2798000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzktMS0xLTEtMA_a0af131c-dd1f-4f63-be1f-113bdb9d9027"
      unitRef="usd">1295000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzEwLTEtMS0xLTA_5f4cdbd1-64de-4bc4-a9d1-abb193bc10a2"
      unitRef="usd">5087000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzExLTEtMS0xLTA_e96db547-02a8-429e-9ef0-241424000a09"
      unitRef="usd">117000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromForeignCurrencyTranslation
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzEyLTEtMS0xLTA_484be36a-0a9a-439f-903b-f28e2ebf339b"
      unitRef="usd">108000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromForeignCurrencyTranslation>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzEzLTEtMS0xLTA_b101cc9d-39d8-4e40-8aec-73108c7556f4"
      unitRef="usd">13622000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzE0LTEtMS0xLTA_a2793413-4290-4556-9596-1657ad0b34c4"
      unitRef="usd">4664000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzE1LTEtMS0xLTA_e5c63b57-717a-4f28-9e2c-fc0b4b36b209"
      unitRef="usd">3940000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzE2LTEtMS0xLTA_670e7ec2-b93e-47a7-92d2-96f41976cfcb"
      unitRef="usd">365000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzE3LTEtMS0xLTA_99f58813-df7a-4dcd-b8d8-44a530204b7c"
      unitRef="usd">159000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromForeignCurrencyTranslation
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzE5LTEtMS0xLTA_df7db96c-7dc4-462c-9b76-3444784c94ac"
      unitRef="usd">210000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromForeignCurrencyTranslation>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90YWJsZTpiYzk5NTAyZDVkM2U0ZjI1OTJhYmQzYWJlNzI1MDRkNi90YWJsZXJhbmdlOmJjOTk1MDJkNWQzZTRmMjU5MmFiZDNhYmU3MjUwNGQ2XzIwLTEtMS0xLTA_a765114e-9979-433b-8a45-ed364ea5f4e7"
      unitRef="usd">21912000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzI3NTc_a765114e-9979-433b-8a45-ed364ea5f4e7"
      unitRef="usd">21912000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzI4MDU_e471669b-56df-4e23-a2d9-7d3aa3b119a3"
      unitRef="usd">18717000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <brc:UnrecognizedTaxBenefitsRecognizedInOtherLiabilities
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzI4Nzk_5480ca63-14aa-443d-a299-34af60458872"
      unitRef="usd">15427000</brc:UnrecognizedTaxBenefitsRecognizedInOtherLiabilities>
    <brc:UnrecognizedTaxBenefitsRecognizedInOtherLiabilities
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzI4ODY_f264a42b-29b3-475d-bfa7-794d6c8007ad"
      unitRef="usd">8931000</brc:UnrecognizedTaxBenefitsRecognizedInOtherLiabilities>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzMwMzE_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <brc:ReductionOfLongtermDeferredIncomeTaxAssetsExcludingInterestAndPenalties
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzMwODM_e9639c2b-e993-4131-b7d1-727041678378"
      unitRef="usd">6485000</brc:ReductionOfLongtermDeferredIncomeTaxAssetsExcludingInterestAndPenalties>
    <brc:ReductionOfLongtermDeferredIncomeTaxAssetsExcludingInterestAndPenalties
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzMwOTA_bf0b6955-cb02-4802-b362-fa03ca30ab2d"
      unitRef="usd">4691000</brc:ReductionOfLongtermDeferredIncomeTaxAssetsExcludingInterestAndPenalties>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzMyMzc_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzM1NjU_b5460c2a-b632-46d0-bc81-8d1fe71d28ce"
      unitRef="usd">-596000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzM1ODQ_a6167879-8d73-40d4-805b-35ab3e9437a0"
      unitRef="usd">-372000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzM2MDc_4e277277-f585-4566-878b-a5913a3ed501"
      unitRef="usd">-1013000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzM2NTM_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzM4MDQ_d3c141c9-f662-4856-89e7-83cc117f90be"
      unitRef="usd">-96000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzM4NjE_de1c52bc-cb80-40db-bfea-a0574144283f"
      unitRef="usd">-2357000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesExpense>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzE2NDkyNjc0NTE5MTY_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQwMjg_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesAccrued
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQwNTU_4269108a-e96d-4ef7-b3bf-caf254908121"
      unitRef="usd">2297000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesAccrued>
    <us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesAccrued
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQwNjI_28fab049-191d-43f1-b9a8-739299d1e46f"
      unitRef="usd">1354000</us-gaap:UnrecognizedTaxBenefitsInterestOnIncomeTaxesAccrued>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQyNTc_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQyODQ_3721cdf9-e71a-4355-824e-13ed1345fc4e"
      unitRef="usd">2098000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQyOTE_16a1d5fc-8340-444e-a354-1bec375745be"
      unitRef="usd">658000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued>
    <us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQ1OTI_79a5b0de-4987-4d38-a94a-cac421444055"
      unitRef="usd">3253000</us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQ4OTI_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <brc:TaxBenefitsAssociatedwithStatueofLimitations
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzQ5MTk_42770d54-ef92-4d70-8ff8-a6270d9984ea"
      unitRef="usd">295000</brc:TaxBenefitsAssociatedwithStatueofLimitations>
    <brc:ScheduleofOpenTaxYearsbyMajorJurisdictionsTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNDgvZnJhZzpmZDljMDQ1YmJiOGY0ODBkODM5ZDExZjU0YjgxYzhiYi90ZXh0cmVnaW9uOmZkOWMwNDViYmI4ZjQ4MGQ4MzlkMTFmNTRiODFjOGJiXzU0OTM_ce6f30ff-045d-4f3b-b288-dcf0ced3129b">The following table summarizes the open tax years for the Company's major jurisdictions:&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:76.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.685%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Jurisdiction&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:9pt;font-weight:700;line-height:100%"&gt;Open&#160;Tax&#160;Years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States &#x2014; Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;F&#x2019;19 &#x2014; F&#x2019;21&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</brc:ScheduleofOpenTaxYearsbyMajorJurisdictionsTableTextBlock>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90ZXh0cmVnaW9uOjUyZGFjZDZjYTI5YTRlYzk5Yzg4NzYyMWI5NDcwY2JhXzk3Mg_b0340c0f-aad1-4a2d-8298-828145fd5b2d">Net Income per Common Share&lt;div style="margin-top:9pt;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;Reconciliations of the numerator and denominator of the basic and diluted per share computations for the Company&#x2019;s Class&#160;A and Class B common stock are summarized as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.911%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.745%"/&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:9pt;font-weight:700;line-height:100%"&gt;Years ended July 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:9pt;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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Numerator (in thousands):&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="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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net Income (Numerator for basic and diluted income per Class A Nonvoting Common Share)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;129,659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,369&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;131,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Preferential dividends&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:9pt;font-weight:400;line-height:100%"&gt;(807)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(828)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(815)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Preferential dividends on dilutive stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(10)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(13)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Numerator for basic and diluted income per Class B Voting Common Share&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;128,847&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;111,531&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;130,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Denominator (in thousands):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Denominator for basic income per share for both Class&#160;A and Class B&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:9pt;font-weight:400;line-height:100%"&gt;52,039&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;52,763&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;52,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Plus: Effect of dilutive equity awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;370&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;468&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Denominator for diluted income per share for both Class&#160;A and Class B&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:9pt;font-weight:400;line-height:100%"&gt;52,409&#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:9pt;font-weight:400;line-height:100%"&gt;53,231&#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:9pt;font-weight:400;line-height:100%"&gt;53,323&#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:9pt;font-weight:400;line-height:100%"&gt;Net income per Class A Nonvoting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.49&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.13&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.47&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.11&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.46&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income per Class B Voting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.48&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.11&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.46&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.10&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.45&#160;&lt;/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;Potentially dilutive securities attributable to outstanding stock options and restricted stock units were excluded from the calculation of diluted earnings per share where the combined exercise price and average unamortized fair value were greater than the average market price of Brady's Class A Nonvoting Common Stock because the effect would have been anti-dilutive. The amount of anti-dilutive shares were 511,189, 387,382, and 372,255 for the fiscal years ended July&#160;31, 2021, 2020, and 2019, respectively.</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90ZXh0cmVnaW9uOjUyZGFjZDZjYTI5YTRlYzk5Yzg4NzYyMWI5NDcwY2JhXzk3MQ_70be6944-9c5a-4829-b95d-555b64c86490">&lt;div style="margin-top:9pt;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;Reconciliations of the numerator and denominator of the basic and diluted per share computations for the Company&#x2019;s Class&#160;A and Class B common stock are summarized as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.911%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.745%"/&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:9pt;font-weight:700;line-height:100%"&gt;Years ended July 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:9pt;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:9pt;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:9pt;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:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Numerator (in thousands):&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="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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net Income (Numerator for basic and diluted income per Class A Nonvoting Common Share)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;129,659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,369&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;131,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Preferential dividends&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:9pt;font-weight:400;line-height:100%"&gt;(807)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(828)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(815)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Preferential dividends on dilutive stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(10)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(13)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Numerator for basic and diluted income per Class B Voting Common Share&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;128,847&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;111,531&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;130,430&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Denominator (in thousands):&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Denominator for basic income per share for both Class&#160;A and Class B&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:9pt;font-weight:400;line-height:100%"&gt;52,039&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;52,763&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;52,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Plus: Effect of dilutive equity awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;370&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;468&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Denominator for diluted income per share for both Class&#160;A and Class B&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:9pt;font-weight:400;line-height:100%"&gt;52,409&#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:9pt;font-weight:400;line-height:100%"&gt;53,231&#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:9pt;font-weight:400;line-height:100%"&gt;53,323&#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:9pt;font-weight:400;line-height:100%"&gt;Net income per Class A Nonvoting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.49&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.13&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.47&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.11&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.46&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income per Class B Voting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.48&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.11&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.46&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.10&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.45&#160;&lt;/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:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzMtMS0xLTEtMA_881b56ff-cad3-4d48-a9ae-87342ec33bb2"
      unitRef="usd">129659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzMtMy0xLTEtMA_166afd76-9c92-497a-ba08-9400cb204022"
      unitRef="usd">112369000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzMtNS0xLTEtMA_f7dc00ec-0098-44f7-82c4-47dd3431c326"
      unitRef="usd">131258000</us-gaap:NetIncomeLoss>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i48f6721241974904b7621ace05427fa6_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzUtMS0xLTEtMA_8f904d3a-fb91-4544-ae87-c07fd2b8092a"
      unitRef="usd">807000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i45b869a2962f4df982141a4edc374941_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzUtMy0xLTEtMA_28aa7998-7361-457f-9bd9-7c4112e4fe1c"
      unitRef="usd">828000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="ib8ca09660c194f79853b8e45809e650e_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzUtNS0xLTEtMA_ee2eefd5-44ec-46c7-8bdd-1f50359b97a0"
      unitRef="usd">815000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="ic61e35c3f83f47d58f9710566d3a067d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzYtMS0xLTEtMA_bde64ca4-9db3-4194-8232-72e60f4d674a"
      unitRef="usd">5000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i97b410ab810e4c3882328bf868dfa6e0_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzYtMy0xLTEtMA_99d825f0-a80d-4192-a8b9-5e229c616e3a"
      unitRef="usd">10000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="i4f705ac6a9ea4f81ba94b005d35592e4_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzYtNS0xLTEtMA_afa0abd4-d6f5-4b85-b4c1-33d988d2be2d"
      unitRef="usd">13000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzctMS0xLTEtMA_f2c91c0f-c6aa-47fc-9e7e-d20a3df6d0fa"
      unitRef="usd">128847000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i97e0001e0faa4690ac713d641e867522_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzctMy0xLTEtMA_403bc615-e4fb-4377-bb3f-10316e5c469a"
      unitRef="usd">111531000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzctNS0xLTEtMA_57607769-2a7f-4140-a639-e576cbedf819"
      unitRef="usd">130430000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzktMS0xLTEtMA_e43809ef-63a0-49ab-8ace-1f60224ccd05"
      unitRef="shares">52039000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzktMy0xLTEtMA_36b49b07-cb8e-43c6-b07a-28728d25ec0b"
      unitRef="shares">52763000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzktNS0xLTEtMA_f8f29399-3bd2-455f-8983-8e5868eddf35"
      unitRef="shares">52596000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzEwLTEtMS0xLTA_0595cf84-94ff-46b7-a9b8-8c44eb0522e0"
      unitRef="shares">370000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzEwLTMtMS0xLTA_c5437c49-8119-40ca-b42c-36169d031596"
      unitRef="shares">468000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzEwLTUtMS0xLTA_4f226445-0329-48be-a3b1-18185c598942"
      unitRef="shares">727000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzExLTEtMS0xLTA_ecf835fa-b11d-4bc8-bb52-9801f7ef25e0"
      unitRef="shares">52409000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzExLTMtMS0xLTA_9b3cfbbc-f070-40fd-a238-57b142233abc"
      unitRef="shares">53231000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzExLTUtMS0xLTA_a9462167-1f75-4c2a-bf36-9810c87b059b"
      unitRef="shares">53323000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzEzLTEtMS0xLTA_986e47e4-f32a-4cbd-8757-95b33c4de266"
      unitRef="usdPerShare">2.49</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzEzLTMtMS0xLTA_9aa1f510-b2c0-4855-a841-b94b4e656b63"
      unitRef="usdPerShare">2.13</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzEzLTUtMS0xLTA_7a13f60c-45fd-4ec2-81c3-d3fdc9b20c87"
      unitRef="usdPerShare">2.50</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE0LTEtMS0xLTA_bb1553d6-0903-46de-bcfa-211647407f8f"
      unitRef="usdPerShare">2.47</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE0LTMtMS0xLTA_9b5f82ce-d230-4995-a291-f029817db406"
      unitRef="usdPerShare">2.11</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE0LTUtMS0xLTA_f4ec3828-11c5-470a-b9b8-7d0bd8876451"
      unitRef="usdPerShare">2.46</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE2LTEtMS0xLTA_d1aba894-ebb8-4244-a924-3c274cc7d9f8"
      unitRef="usdPerShare">2.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i97e0001e0faa4690ac713d641e867522_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE2LTMtMS0xLTA_f660f41b-77ba-4ed8-8ce3-ed35c3102668"
      unitRef="usdPerShare">2.11</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE2LTUtMS0xLTA_bf0cc8e3-5ef2-44b4-b5f0-6dfa8e851fe9"
      unitRef="usdPerShare">2.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i2a5d4732131048f3b2ec8659e5286889_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE3LTEtMS0xLTA_1f319a91-3653-4130-810d-cc8bfd7df4c2"
      unitRef="usdPerShare">2.46</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i97e0001e0faa4690ac713d641e867522_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE3LTMtMS0xLTA_2522c2d3-ba50-4d1f-9284-5bed32b1a7c3"
      unitRef="usdPerShare">2.10</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i500e49ce17734fb59ba7208911dc8ba7_D20180801-20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90YWJsZTo4MTU0MGYyNjlmOGU0MzMyODQ1YzljMmFhNTMwOTQ4NS90YWJsZXJhbmdlOjgxNTQwZjI2OWY4ZTQzMzI4NDVjOWMyYWE1MzA5NDg1XzE3LTUtMS0xLTA_d88a755f-53a0-4bd3-a76d-d4d1c42d593a"
      unitRef="usdPerShare">2.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90ZXh0cmVnaW9uOjUyZGFjZDZjYTI5YTRlYzk5Yzg4NzYyMWI5NDcwY2JhXzg5NQ_a8c9cb71-5227-4852-a977-45215038bf28"
      unitRef="shares">511189</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90ZXh0cmVnaW9uOjUyZGFjZDZjYTI5YTRlYzk5Yzg4NzYyMWI5NDcwY2JhXzg5OQ_fc55e0bc-94a5-4b50-a40c-fa10eb6774be"
      unitRef="shares">387382</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i4ca2588c3f6c45daaad93b165bd2e788_D20180801-20190731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90ZXh0cmVnaW9uOjUyZGFjZDZjYTI5YTRlYzk5Yzg4NzYyMWI5NDcwY2JhXzkwNw_e51a5d73-5a95-48b5-ba8c-81ecd31b7a69"
      unitRef="shares">372255</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTQvZnJhZzo1MmRhY2Q2Y2EyOWE0ZWM5OWM4ODc2MjFiOTQ3MGNiYS90ZXh0cmVnaW9uOjUyZGFjZDZjYTI5YTRlYzk5Yzg4NzYyMWI5NDcwY2JhXzkzNw_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90ZXh0cmVnaW9uOmQ0NGFiYTEzY2ZmZTQ0N2NiNGE1MjkyMGJjOTFhZDY1XzIwNDM_3d96b3a9-483e-4579-ae42-a9c7086abfbb">Fair Value Measurements&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;In accordance with fair value accounting guidance, the Company determines fair value based on the exchange price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. The inputs used to measure fair value are classified into the following hierarchy:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Level 1&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; &#x2014; Unadjusted quoted prices in active markets for identical instruments that are accessible as of the reporting date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:18pt"&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;Level 2 &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;&#x2014; Other significant pricing inputs that are either directly or indirectly observable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:18pt"&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;Level 3&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &#x2014; Significant unobservable pricing inputs, which result in the use of management's own assumptions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table summarizes the Company's financial assets and liabilities that were accounted for at fair value on a recurring basis at July&#160;31, 2021 and July&#160;31, 2020, according to the valuation techniques the Company used to determine their fair values.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.490%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.886%"/&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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 2020&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:9pt;font-weight:700;line-height:100%"&gt;Fair Value Hierarchy&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Trading securities&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,135&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,606&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts&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:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Level 2&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following methods and assumptions were used to estimate the fair value of each class of financial instrument:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Trading securities&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;: The Company&#x2019;s deferred compensation investments consist of investments in mutual funds, which are included in "Other assets" on the accompanying Consolidated Balance Sheets. These investments were classified as Level 1 as the shares of these investments trade with sufficient frequency and volume to enable us to obtain pricing information on an ongoing basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;Foreign exchange contracts&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;: The Company&#x2019;s foreign exchange contracts were classified as Level 2 as the fair value was based on the present value of the future cash flows using external models that use observable inputs, such as interest rates, yield curves and foreign exchange rates. See&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Note 14&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;, &#x201c;Derivatives and Hedging Activities,&#x201d; for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;There have been no transfers of assets or liabilities between the fair value hierarchy levels, outlined above, during the fiscal years ended July&#160;31, 2021 and July&#160;31, 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&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;See Note 6 for information regarding the fair value of the Company's long-term debt.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90ZXh0cmVnaW9uOmQ0NGFiYTEzY2ZmZTQ0N2NiNGE1MjkyMGJjOTFhZDY1XzIwNTE_229beeeb-e51f-42b6-ae42-97447acc6c07">&lt;div style="margin-top:9pt;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;The following table summarizes the Company's financial assets and liabilities that were accounted for at fair value on a recurring basis at July&#160;31, 2021 and July&#160;31, 2020, according to the valuation techniques the Company used to determine their fair values.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.490%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.886%"/&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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 2020&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:9pt;font-weight:700;line-height:100%"&gt;Fair Value Hierarchy&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Trading securities&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;20,135&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,606&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts&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:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Level 2&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90ZXh0cmVnaW9uOmQ0NGFiYTEzY2ZmZTQ0N2NiNGE1MjkyMGJjOTFhZDY1XzgyMw_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:MarketableSecuritiesNoncurrent
      contextRef="i52db5cd3125a4040a2d267de0d98824f_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90YWJsZTo5ZWQ5MDRjOTg3NjM0MWY0YjA2YzkzOTZiYTc5OTRlNS90YWJsZXJhbmdlOjllZDkwNGM5ODc2MzQxZjRiMDZjOTM5NmJhNzk5NGU1XzItMS0xLTEtMA_b0bf9cd9-e394-4561-ae8e-bd03137f507b"
      unitRef="usd">20135000</us-gaap:MarketableSecuritiesNoncurrent>
    <us-gaap:MarketableSecuritiesNoncurrent
      contextRef="i91bd7e52168149daad0e1f0c64243d40_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90YWJsZTo5ZWQ5MDRjOTg3NjM0MWY0YjA2YzkzOTZiYTc5OTRlNS90YWJsZXJhbmdlOjllZDkwNGM5ODc2MzQxZjRiMDZjOTM5NmJhNzk5NGU1XzItMy0xLTEtMA_be0caa24-0661-4587-912b-52f734347c40"
      unitRef="usd">18606000</us-gaap:MarketableSecuritiesNoncurrent>
    <us-gaap:ForeignCurrencyContractAssetFairValueDisclosure
      contextRef="i1adbae4698be4d0eb1b0daf4267f4940_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90YWJsZTo5ZWQ5MDRjOTg3NjM0MWY0YjA2YzkzOTZiYTc5OTRlNS90YWJsZXJhbmdlOjllZDkwNGM5ODc2MzQxZjRiMDZjOTM5NmJhNzk5NGU1XzMtMS0xLTEtMA_a3e4cd99-b095-4a0a-bef9-922b11b54f50"
      unitRef="usd">150000</us-gaap:ForeignCurrencyContractAssetFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractAssetFairValueDisclosure
      contextRef="if03387fd9b9e49c3967ab9a5c9022235_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90YWJsZTo5ZWQ5MDRjOTg3NjM0MWY0YjA2YzkzOTZiYTc5OTRlNS90YWJsZXJhbmdlOjllZDkwNGM5ODc2MzQxZjRiMDZjOTM5NmJhNzk5NGU1XzMtMy0xLTEtMA_8f9b8a04-80d8-4721-905b-fb36c9be893e"
      unitRef="usd">594000</us-gaap:ForeignCurrencyContractAssetFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure
      contextRef="ie3be8e7fedcc4611ae739b8d415c0e12_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90YWJsZTo5ZWQ5MDRjOTg3NjM0MWY0YjA2YzkzOTZiYTc5OTRlNS90YWJsZXJhbmdlOjllZDkwNGM5ODc2MzQxZjRiMDZjOTM5NmJhNzk5NGU1XzUtMS0xLTEtMA_ff060095-4b25-4dcd-bcd3-cb8a0acf142a"
      unitRef="usd">51000</us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure
      contextRef="i13c19575d95b4e83acfb4c6ade39c353_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90YWJsZTo5ZWQ5MDRjOTg3NjM0MWY0YjA2YzkzOTZiYTc5OTRlNS90YWJsZXJhbmdlOjllZDkwNGM5ODc2MzQxZjRiMDZjOTM5NmJhNzk5NGU1XzUtMy0xLTEtMA_97314374-4f1f-4871-b715-bb6d7a40283f"
      unitRef="usd">777000</us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNTcvZnJhZzpkNDRhYmExM2NmZmU0NDdjYjRhNTI5MjBiYzkxYWQ2NS90ZXh0cmVnaW9uOmQ0NGFiYTEzY2ZmZTQ0N2NiNGE1MjkyMGJjOTFhZDY1XzE5MjQ_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzM2ODM_510e5dc9-8e56-4166-a6f9-1599c42beca6">Derivatives and Hedging Activities&lt;div style="margin-top:9pt;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;The Company utilizes forward foreign exchange currency contracts to reduce the exchange rate risk of specific foreign currency denominated transactions. These contracts typically require the exchange of a foreign currency for U.S. dollars at a fixed rate at a future date, with maturities of less than 18 months, which qualify as cash flow hedges or net investment hedges under the accounting guidance for derivative instruments and hedging activities. The primary objective of the Company&#x2019;s foreign currency exchange risk management program is to minimize the impact of currency movements due to transactions in other than the respective subsidiaries&#x2019; functional currency and to minimize the impact of currency movements on the Company&#x2019;s net investment denominated in a currency other than the U.S. dollar. To achieve this objective, the Company hedges a portion of known exposures using forward foreign exchange contracts.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Main foreign currency exposures are related to transactions denominated in the British Pound, Euro, Canadian dollar, Australian dollar, Mexican Peso, Chinese Yuan, Malaysian Ringgit and Singapore dollar. Generally, these risk management transactions will involve the use of foreign currency derivatives to minimize the impact of currency movements on non-functional currency transactions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The U.S. dollar equivalent notional amounts of outstanding forward exchange contracts were as follows as of July&#160;31, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.007%"/&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:8.5pt;font-weight:400;line-height:100%"&gt;&#160;&#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:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;font-weight:400;line-height:100%"&gt;Designated as cash flow hedges&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;30,724&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-designated hedges&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;3,580&#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:9pt;font-weight:400;line-height:100%"&gt;3,107&#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 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total foreign exchange contracts&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Flow Hedges&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The Company has designated a portion of its forward foreign exchange contracts as cash flow hedges and recorded these contracts at fair value on the accompanying Consolidated Balance Sheets. For these instruments, the gain or loss on the derivative is reported as a component of other comprehensive income (&#x201c;OCI&#x201d;) and reclassified into income in the same period or periods during which the hedged transaction affects income. At July&#160;31, 2021 and 2020, unrealized gains of $770 and losses of $385 have been included in AOCI, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table summarizes the amount of pre-tax gains and losses related to derivatives designated as cash flow hedging instruments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;Gains (losses) recognized in OCI&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,451&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(576)&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;837&#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:9pt;font-weight:400;line-height:100%"&gt;Gains reclassified from OCI into cost of goods sold&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:9pt;font-weight:400;line-height:100%"&gt;399&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;614&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;Fair values of derivative and hedging instruments in the accompanying Consolidated Balance Sheets were as follows:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;Prepaid expenses and other current assets&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:9pt;font-weight:700;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;Prepaid expenses and other current assets&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:9pt;font-weight:700;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Derivatives designated&#160;as hedging&#160;instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts (cash flow hedges)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;588&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Derivatives not designated as hedging instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts (non-designated hedges)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total derivative instruments&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:DerivativeRemainingMaturity1
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzM0Ng_b91737c8-0108-4667-9f56-16ee123cf984">P18M</us-gaap:DerivativeRemainingMaturity1>
    <us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzM2OTA_f2237d18-00b2-4773-b57c-64c16b74e233">&lt;div style="margin-top:9pt;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;The U.S. dollar equivalent notional amounts of outstanding forward exchange contracts were as follows as of July&#160;31, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.007%"/&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:8.5pt;font-weight:400;line-height:100%"&gt;&#160;&#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:9pt;font-weight:700;line-height:100%"&gt;July 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:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;font-weight:400;line-height:100%"&gt;Designated as cash flow hedges&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;30,724&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-designated hedges&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;3,580&#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:9pt;font-weight:400;line-height:100%"&gt;3,107&#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 2px 18.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total foreign exchange contracts&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzAtMS0xLTEtMA_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i43e844db772742ac80ba43d5a3294d99_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzEtMS0xLTEtMA_7abb3152-5896-4554-9e62-e486c22994ea"
      unitRef="usd">30724000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i1a6917f08c3149d0a8842d858ddafc47_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzEtMy0xLTEtMA_5d5aa28a-9416-47fc-b34e-8548710259e3"
      unitRef="usd">24600000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ib87253f3eb474cbc8ae25828f46c19a4_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzItMS0xLTEtMA_a99adf4f-23cd-47ae-bb32-a72f43b7b164"
      unitRef="usd">3580000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i15c09184fb6240ab9c8ea463d7bca8aa_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzItMy0xLTEtMA_5b9b8c14-38a2-485e-8766-38276a4fef09"
      unitRef="usd">3107000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzMtMS0xLTEtMA_da590095-805c-4688-9cd8-5c1fb6627904"
      unitRef="usd">34304000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i0498618e14e04074a5ec52c438eecb8d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTplODcwNDQ0YTAyZTY0NjMwOTA2MmQ4NTgxNzE3Yzc1My90YWJsZXJhbmdlOmU4NzA0NDRhMDJlNjQ2MzA5MDYyZDg1ODE3MTdjNzUzXzMtMy0xLTEtMA_a103520b-b7e5-4d52-9da2-97a203310288"
      unitRef="usd">27707000</us-gaap:DerivativeNotionalAmount>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzE5MDI_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months
      contextRef="i17172882fe7a4504977da5473f1edda1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzE5MzU_cbf4e4fe-e0cd-47eb-9a10-6852d28b5b13"
      unitRef="usd">770000</us-gaap:ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months>
    <us-gaap:ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months
      contextRef="i2e434574bcf24104a2d2334c419ff49f_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzE5NTI_096e6580-76c1-4755-b486-e91d829f9ab6"
      unitRef="usd">385000</us-gaap:ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months>
    <us-gaap:ScheduleOfDerivativeInstrumentsEffectOnOtherComprehensiveIncomeLossTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzM2ODU_a1b87c06-608f-4f40-8401-23cb01380870">&lt;div style="margin-top:9pt;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;The following table summarizes the amount of pre-tax gains and losses related to derivatives designated as cash flow hedging instruments:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.859%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.863%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8.5pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;Gains (losses) recognized in OCI&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,451&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(576)&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;837&#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:9pt;font-weight:400;line-height:100%"&gt;Gains reclassified from OCI into cost of goods sold&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:9pt;font-weight:400;line-height:100%"&gt;399&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;614&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsEffectOnOtherComprehensiveIncomeLossTableTextBlock>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzAtMi0xLTEtMA_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzItMi0xLTEtMA_877f9f51-d7ab-4c75-bffe-9a6afe3b7a8f"
      unitRef="usd">1451000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzItNC0xLTEtMA_efa1395b-7891-45c7-8a83-a45506263d15"
      unitRef="usd">-576000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i47f99ba1080d4e24b5afd621199ee7e8_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzItNi0xLTEtMA_39d02ff4-1584-42a4-bc2b-78e1396b45ec"
      unitRef="usd">837000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:ForeignCurrencyCashFlowHedgeGainLossReclassifiedToEarningsNet
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzItMi0xLTEtNzEwNw_086ceb29-a2ae-4951-8c4b-f48347cee89e"
      unitRef="usd">399000</us-gaap:ForeignCurrencyCashFlowHedgeGainLossReclassifiedToEarningsNet>
    <us-gaap:ForeignCurrencyCashFlowHedgeGainLossReclassifiedToEarningsNet
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzItNC0xLTEtNzEwNw_5376f5b5-bdc5-4c02-ae06-42e087f7bb2b"
      unitRef="usd">614000</us-gaap:ForeignCurrencyCashFlowHedgeGainLossReclassifiedToEarningsNet>
    <us-gaap:ForeignCurrencyCashFlowHedgeGainLossReclassifiedToEarningsNet
      contextRef="i7ef0175a328b4ab9be5f9eaf8e8afcd1_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo0ZWZhMGVhMThjZjc0ZjVjYmFlMzdkODY1MGU0NDVjNC90YWJsZXJhbmdlOjRlZmEwZWExOGNmNzRmNWNiYWUzN2Q4NjUwZTQ0NWM0XzItNi0xLTEtNzEwNw_0f32db01-f044-41f1-b65a-277a6e106ee9"
      unitRef="usd">1048000</us-gaap:ForeignCurrencyCashFlowHedgeGainLossReclassifiedToEarningsNet>
    <us-gaap:FairValueByBalanceSheetGroupingTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90ZXh0cmVnaW9uOjI5ZGRiYjM0ZTI5ZTQzOWM4MDcyNTgwMzBiMGMwODA2XzM2OTE_18f76366-a56d-4301-91e5-39aa067a52a4">&lt;div style="margin-top:9pt;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;Fair values of derivative and hedging instruments in the accompanying Consolidated Balance Sheets were as follows:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:52.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.576%"/&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:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;July 31, 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:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;Prepaid expenses and other current assets&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:9pt;font-weight:700;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&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:9pt;font-weight:700;line-height:100%"&gt;Prepaid expenses and other current assets&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:9pt;font-weight:700;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Derivatives designated&#160;as hedging&#160;instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts (cash flow hedges)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;588&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Derivatives not designated as hedging instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange contracts (non-designated hedges)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total derivative instruments&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueByBalanceSheetGroupingTextBlock>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzAtMS0xLTEtMA_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <us-gaap:DerivativeFairValueOfDerivativeAsset
      contextRef="ib4e9332b03a343f4804379809bbbe875_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzMtMS0xLTEtMA_1073d492-2e12-4e3f-a2f0-589c2f0a5445"
      unitRef="usd">150000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability
      contextRef="ib07228633e2c4b44800d691a5b1afd42_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzMtMy0xLTEtMA_902a45e9-1ca5-4def-bfdf-31e8d417bcee"
      unitRef="usd">51000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeFairValueOfDerivativeAsset
      contextRef="ia8dc0440ca7d4d649ccb7b09dd7e0722_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzMtNS0xLTEtMA_f96009da-ead0-453d-af8c-3716e9eca869"
      unitRef="usd">588000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability
      contextRef="ic81b9b1a583943bcbcc19964902ad835_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzMtNy0xLTEtMA_61f87b78-bef8-4a83-acd2-7b6d0bc3b908"
      unitRef="usd">761000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeFairValueOfDerivativeAsset
      contextRef="i8c58309fb869407fa2a69ccbb50da433_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzYtMS0xLTEtMA_141de86c-fcf8-4d23-83fa-89862cb63746"
      unitRef="usd">0</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability
      contextRef="i1ecefff189764e6aa7cdf20a17f817cd_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzYtMy0xLTEtMA_59d68b0a-a256-41b0-9e7f-d803f9726ead"
      unitRef="usd">0</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeFairValueOfDerivativeAsset
      contextRef="i5f1ccfe77bdc468c9d0e7a531780b667_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzYtNS0xLTEtMA_2a5d1db4-1d8f-4542-a5ae-072c65be0a18"
      unitRef="usd">6000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability
      contextRef="i5e459005b6584065a2931624e04c6d6d_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzYtNy0xLTEtMA_b2693006-670b-4857-94ca-fc9c2f1a7b17"
      unitRef="usd">16000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeFairValueOfDerivativeAsset
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzctMS0xLTEtMA_eb6bb591-1fa5-4977-bc98-4213434c9a14"
      unitRef="usd">150000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability
      contextRef="i3af50237bbe04bdf86432e1c8b222bd3_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzctMy0xLTEtMA_8ac293a2-731f-418d-93a2-0d548cd16c30"
      unitRef="usd">51000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeFairValueOfDerivativeAsset
      contextRef="ie299613f6aba46438c2cba7bd8712fd2_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzctNS0xLTEtMA_b9de3c66-e8a4-4f5b-ab6e-404db9af2230"
      unitRef="usd">594000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability
      contextRef="i534d5740803e4731a612db5e8cdabd83_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjAvZnJhZzoyOWRkYmIzNGUyOWU0MzljODA3MjU4MDMwYjBjMDgwNi90YWJsZTo1NjVhMzBiYjllOGU0NWE2YjdmYzI1OTY3ZGZkMTU1MC90YWJsZXJhbmdlOjU2NWEzMGJiOWU4ZTQ1YTZiN2ZjMjU5NjdkZmQxNTUwXzctNy0xLTEtMA_a06f3077-f6ef-49b8-a5e9-f0ee76e4a238"
      unitRef="usd">777000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzEwOTk1MTE2NDg5MTQ_5e1a7763-af9c-4c71-abab-ddda0fe02c0e">Acquisitions&lt;div style="margin-top:9pt;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;On May 21, 2021, the Company acquired all of the outstanding shares of Magicard Holdings Limited (&#x201c;Magicard&#x201d;), based in Weymouth, United Kingdom, for $56,694, net of cash received. Magicard is a manufacturer of identification card printers with high-resolution, full-color image capabilities, built-in security features and the ability to encode smart cards. The intangible assets consist of a customer relationship of $18,303, which is being amortized over eight years, technology of $2,837, which is being amortized over five years and a tradename of $567, which is being amortized over two years. The goodwill acquired of $43,235 is not tax-deductible. Magicard has a complementary product offering that allows the Company to offer new printing and encoding capabilities to both new and existing customers and is included in the Company&#x2019;s IDS segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;On April 15, 2021, the Company launched an all-cash tender offer in Finland to acquire all of the outstanding, publicly-held shares of Nordic ID Oyj, a Finnish corporation (&#x201c;Nordic ID&#x201d;) based in Salo, Finland. Nordic ID specializes in RFID readers, scanners, and the associated software to power track-and-trace applications in industrial manufacturing. On May 19, 2021, the results of the Company&#x2019;s cash tender offer were finalized with 92.9% of all outstanding shares validly tendered as part of the tender offer. On May 21, 2021, the Company acquired the shares validly tendered as part of the tender offer for $9,804 plus the assumption of debt of $4,668. The intangible assets consist of a customer relationship of $3,803, which is being amortized over ten years and technology of $600, which is being amortized over six years. The goodwill acquired of $12,584 is not tax-deductible. Nordic ID has begun the squeeze-out process after which Brady intends to acquire all of the remaining outstanding shares and apply for delisting of Nordic ID from the Nasdaq First North Growth Market Finland. Nordic ID is included in the Company&#x2019;s IDS segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;On June 16, 2021, the Company acquired all of the outstanding shares of The Code Corporation (&#x201c;Code&#x201d;), based in Salt Lake City, Utah, for $172,815, net of cash received. Code specializes in high-quality barcode scanners and the associated software to power track-and-trace applications in a variety of industries. Initial financing for this acquisition consisted of $75,000 from the Company&#x2019;s revolving loan agreement and the balance from cash on hand. Prior to July 31, 2021, the Company repaid $37,000 of the borrowing on the credit facility with cash on hand. The intangible assets consist of a customer relationship of $44,500, which is being amortized over nine years, technology of $6,200, which is being amortized over five years and a tradename of $600, which is being amortized over three years. The goodwill acquired of $139,347 is not tax-deductible. The final purchase price allocation is subject to post-closing adjustments pursuant to the terms of the merger agreement. Code has a complementary product offering that allows the Company to expand in the industrial track-and-trace market and is included in the Company&#x2019;s IDS segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The following table summarizes the combined preliminary fair values of the assets acquired and liabilities assumed at the date of the acquisitions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&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:87.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.012%"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable - net&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:9pt;font-weight:400;line-height:100%"&gt;15,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total inventories&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:9pt;font-weight:400;line-height:100%"&gt;6,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&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:9pt;font-weight:400;line-height:100%"&gt;544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&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:9pt;font-weight:400;line-height:100%"&gt;2,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="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&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:9pt;font-weight:400;line-height:100%"&gt;195,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other intangible 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:9pt;font-weight:400;line-height:100%"&gt;77,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other assets&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:9pt;font-weight:400;line-height:100%"&gt;3,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts payable&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:9pt;font-weight:400;line-height:100%"&gt;(7,584)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued compensation and benefits&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:9pt;font-weight:400;line-height:100%"&gt;(5,537)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taxes, other than income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(4,081)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,197)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,668)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,348)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other liabilities&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:9pt;font-weight:400;line-height:100%"&gt;(14,836)&lt;/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 style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;251,496&#160;&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less:  cash acquired&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:9pt;font-weight:400;line-height:100%"&gt;(7,513)&lt;/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 style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value of total consideration&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;243,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;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;The results of the operations of the acquired businesses have been included since the date of acquisition in the accompanying consolidated financial statements. Acquisition-related expenses of $3,164 were recognized in SG&amp;amp;A during the year ended July 31, 2021. Pro forma information related to the acquisitions during the year ended July 31, 2020 is not included because the impact on the Company&#x2019;s consolidated results of operations is considered to be immaterial.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ib7437006003c4301ba43d440bc1493de_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzEwOTk1MTE2NDg5NDQ_044f3a51-7dbc-41a8-90be-c91321f0be3f"
      unitRef="usd">56694000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ib268211430dc42efa18164fa2478218d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3MjQ_5aa6699e-6217-4534-b7fe-0519e7cd2891"
      unitRef="usd">18303000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ib268211430dc42efa18164fa2478218d_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA4ODE_2f136327-518c-413d-8c38-b259fbc3e4aa">P8Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i668829de80ea4c2096e12124f56d4cdf_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3NTE_96fecc6f-effc-4400-a41a-75759951f637"
      unitRef="usd">2837000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i668829de80ea4c2096e12124f56d4cdf_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA4NjY_c91ce679-5f25-4f40-bc95-329354dd8d90">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i6b765d2588034841b14ae4a569585d45_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3MzQ_90ddccc7-d9d2-421f-add3-66aa1a63f8db"
      unitRef="usd">567000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i6b765d2588034841b14ae4a569585d45_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA4NTI_f119d202-ffdc-4a8c-af86-cdf99d60ca77">P2Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib7437006003c4301ba43d440bc1493de_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA2NDc_42f1a298-f43b-4973-ab36-3775e8a1096e"
      unitRef="usd">43235000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ib5d6dd6193bd4c309ab950e0557c3d2d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzEwOTk1MTE2NDg5NTQ_b4a99ed9-1eee-499d-a66f-647dae2353f2"
      unitRef="usd">9804000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzEwOTk1MTE2NDg5NjM_100b6b02-668f-4da8-8135-1d9455f8569a"
      unitRef="usd">4668000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ia49185af041b481eb5acebb928ef6afd_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3NjA_9b0579fc-6ff8-4f8f-906d-ae2bfbd3eb02"
      unitRef="usd">3803000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ia49185af041b481eb5acebb928ef6afd_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA4Mzg_30afa3ab-d279-47ce-994f-d9b22987c0e6">P10Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i9c88ae3dcf2c40919ba929905846bfab_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3Njk_c4d259ed-a475-424f-ae3e-21f64dc768de"
      unitRef="usd">600000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i9c88ae3dcf2c40919ba929905846bfab_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA4MjQ_723d9aea-349f-40f3-ae01-690a44b8d41f">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib5d6dd6193bd4c309ab950e0557c3d2d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA2NTc_1cdbc1ad-a76d-4ff8-acd6-d4c34893fef4"
      unitRef="usd">12584000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ib195d4841e9a400698be604f57ceca5f_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzEwOTk1MTE2NDg5MzM_367b823d-51b7-400b-a19f-7c3e28581561"
      unitRef="usd">172815000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <brc:RevolverAmountDrawnToFundCodeAcquisition
      contextRef="i5136cff2b09e4cca83a5bbae798e13f8_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA2Nzg_10725d6c-be85-4a1c-b41c-42f5861dcf6b"
      unitRef="usd">75000000</brc:RevolverAmountDrawnToFundCodeAcquisition>
    <brc:RevolverRepaidDuringYearRelatedToCodeAcquistion
      contextRef="i5136cff2b09e4cca83a5bbae798e13f8_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA2ODg_94c5a78c-f6a6-4af5-85e2-3735bfab32b8"
      unitRef="usd">37000000</brc:RevolverRepaidDuringYearRelatedToCodeAcquistion>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="id4f52015455d464c826da17d614617c1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA2OTg_ce275734-cf08-422c-8547-50bce4dc6991"
      unitRef="usd">44500000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="id4f52015455d464c826da17d614617c1_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3NzY_ae65718c-1332-4c51-89a2-9df4153c8881">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i7a40deadf4454a27823a0e0178f42d94_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3MTU_634aa73f-2ade-4bc3-832b-d74a540794ba"
      unitRef="usd">6200000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i7a40deadf4454a27823a0e0178f42d94_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3OTM_5a6fcc8b-2baa-4cdd-8b44-5e46af5b8160">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="if2f69e43df6d4e04bf1893a0de33472a_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA3MDg_ffe408ef-62ef-4fa0-87a8-75ff2ac1a796"
      unitRef="usd">600000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="if2f69e43df6d4e04bf1893a0de33472a_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA4MDg_f9d5299e-687d-421f-90c7-55340fb43fdb">P3Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib195d4841e9a400698be604f57ceca5f_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzI3NDg3NzkwOTA2MzY_0d0b60c6-16ab-422b-a5af-f3d75b8c216e"
      unitRef="usd">139347000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzAtMS0xLTEtMTE1MjI_b4ce4e60-a589-4fba-b591-f769dcf8ec84"
      unitRef="usd">7513000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzEtMS0xLTEtMTE1MjI_5889e848-eeb0-42a8-9507-9cae392342dc"
      unitRef="usd">15401000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzItMS0xLTEtMTE1MjI_f4a82855-f790-4fbe-b468-5ec0a281c00a"
      unitRef="usd">6581000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzMtMS0xLTEtMTE1MjI_4fcc479e-23a4-42b3-addb-c34a6822e105"
      unitRef="usd">544000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzQtMS0xLTEtMTE1MjI_eb6a6362-c7ab-4b3a-9b0f-fc7e4ddcf2f9"
      unitRef="usd">2023000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzUtMS0xLTEtMTE1MjI_8ccc6c69-7da6-4482-aec9-355be491db38"
      unitRef="usd">195166000</brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzYtMS0xLTEtMTE1MjI_dada9140-c129-4b89-81f7-dec1ec8f448b"
      unitRef="usd">77410000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzctMS0xLTEtMTE1MjI_b5af63ca-afe8-430a-bbc5-4b1bb619c7fb"
      unitRef="usd">3109000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzgtMS0xLTEtMTE1MjI_fd0e5d23-14ab-4437-9130-79d3a788303f"
      unitRef="usd">7584000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedCompensationAndBenefits
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzktMS0xLTEtMTE1MjI_0b960fc7-6342-4f63-ab0f-abf9a7d7f0b2"
      unitRef="usd">5537000</brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedCompensationAndBenefits>
    <brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTaxesOtherThanIncomeTaxes
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzEwLTEtMS0xLTExNTIy_47ee3e30-a368-42c5-873b-d851cbe84a0c"
      unitRef="usd">4081000</brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTaxesOtherThanIncomeTaxes>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzExLTEtMS0xLTExNTIy_f93070dc-c34b-41eb-86cc-a0df5b3f7fb5"
      unitRef="usd">8197000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzEyLTEtMS0xLTExNTIy_7109780d-ce06-45f7-b64a-1318253a5595"
      unitRef="usd">4668000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzEzLTEtMS0xLTExNTIy_47753477-a5c5-4697-870c-dc64bb38b5ca"
      unitRef="usd">11348000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzE0LTEtMS0xLTExNTIy_8872e27f-4dac-4d02-927f-5e60aff5de73"
      unitRef="usd">14836000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredIncludingCashAndLiabilitiesAssumedNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzE1LTEtMS0xLTExNTIy_d562b15f-10a0-4f9d-be47-4c0a631d5649"
      unitRef="usd">251496000</brc:BusinessCombinationRecognizedIdentifiableAssetsAcquiredIncludingCashAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzE2LTEtMS0xLTExNTIy_5e0ded8d-2c6d-4949-ae08-768d72d93664"
      unitRef="usd">7513000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="i900a9798e6d64452a424e3c10000c048_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90YWJsZTozZDEwMDI2YWFjZDk0MjlkYWYxN2Y5Yzc3ODEyMmI3Yi90YWJsZXJhbmdlOjNkMTAwMjZhYWNkOTQyOWRhZjE3ZjljNzc4MTIyYjdiXzE4LTEtMS0xLTExNTIy_19d5b5a7-90c7-4dee-ad70-823aef820013"
      unitRef="usd">243983000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsExpensesAndLossesRecognized
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjMvZnJhZzphNjk1ZDRiZGY3YzU0OTNhOWI0YTZmMDg2N2Y3ZDVhYy90ZXh0cmVnaW9uOmE2OTVkNGJkZjdjNTQ5M2E5YjRhNmYwODY3ZjdkNWFjXzEwOTk1MTE2NDg5MjQ_289392de-5916-46e8-9b4f-424a30ff288a"
      unitRef="usd">3164000</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsExpensesAndLossesRecognized>
    <us-gaap:QuarterlyFinancialInformationTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90ZXh0cmVnaW9uOmYxMWEwNTVjOTU2NDRhMjNiNzY5NWE0ZTYxMjUyYWQ1XzE1NA_1e24b198-86a5-44c7-886b-ffd2a0a7469d">Unaudited Quarterly Financial Information&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:39.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.017%"/&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:9pt;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="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quarters&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;First&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:9pt;font-weight:700;line-height:100%"&gt;Second&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:9pt;font-weight:700;line-height:100%"&gt;Third&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:9pt;font-weight:700;line-height:100%"&gt;Fourth&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;286,947&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;276,665&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;265,943&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;251,744&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,081,299&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross margin&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:9pt;font-weight:400;line-height:100%"&gt;141,405&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;139,127&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;129,527&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;118,506&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;528,565&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating income &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;40,891&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;41,244&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;22,669&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;33,219&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;138,023&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,498&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;33,553&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;13,633&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;27,685&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;112,369&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income per Class&#160;A Nonvoting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.63&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.26&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.53&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.13&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.70&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.62&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.26&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.53&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal 2021 &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:700;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;277,227&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;265,838&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;295,503&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;306,130&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,144,698&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross margin&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:9pt;font-weight:400;line-height:100%"&gt;135,428&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;129,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 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:9pt;font-weight:400;line-height:100%"&gt;148,847&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;147,649&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;561,446&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating income&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:9pt;font-weight:400;line-height:100%"&gt;42,188&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;37,412&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;46,725&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;40,802&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;167,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(3)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;33,481&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;30,860&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;37,291&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;28,027&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;129,659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income per Class&#160;A Nonvoting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.64&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.59&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.49&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.64&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.59&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.71&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.53&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)  In the third quarter of fiscal 2020, the Company recognized before tax impairment charges of $13,821.&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;(2)  In the fourth quarter of fiscal 2021, the Company acquired three companies: Nordic ID, Magicard, and Code. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The operating results of the acquired companies are included in the Company&#x2019;s consolidated financial statements from the date of acquisition.&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;(3) &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the fourth quarter of fiscal 2021, the Company recognized other-than-temporary impairment charges of $4,994 of its equity method investment in React Mobile, Inc.&lt;/span&gt;&lt;/div&gt;</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90ZXh0cmVnaW9uOmYxMWEwNTVjOTU2NDRhMjNiNzY5NWE0ZTYxMjUyYWQ1XzE4Mg_bd82f404-0d2e-437d-9765-197847cd6fee">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:39.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.017%"/&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:9pt;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="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quarters&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;First&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:9pt;font-weight:700;line-height:100%"&gt;Second&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:9pt;font-weight:700;line-height:100%"&gt;Third&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:9pt;font-weight:700;line-height:100%"&gt;Fourth&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:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;286,947&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;276,665&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;265,943&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;251,744&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,081,299&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross margin&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:9pt;font-weight:400;line-height:100%"&gt;141,405&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;139,127&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;129,527&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;118,506&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;528,565&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating income &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;40,891&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;41,244&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;22,669&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;33,219&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;138,023&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,498&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;33,553&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;13,633&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;27,685&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;112,369&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income per Class&#160;A Nonvoting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.63&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.26&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.53&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.13&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.70&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.62&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.26&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.53&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal 2021 &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:700;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;277,227&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;265,838&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;295,503&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;306,130&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,144,698&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross margin&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:9pt;font-weight:400;line-height:100%"&gt;135,428&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;129,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 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:9pt;font-weight:400;line-height:100%"&gt;148,847&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;147,649&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;561,446&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating income&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:9pt;font-weight:400;line-height:100%"&gt;42,188&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;37,412&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;46,725&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;40,802&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;167,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(3)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;33,481&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;30,860&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;37,291&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;28,027&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;129,659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net income per Class&#160;A Nonvoting Common Share:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.64&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.59&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.49&#160;&lt;/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:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.64&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.59&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.71&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.53&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)  In the third quarter of fiscal 2020, the Company recognized before tax impairment charges of $13,821.&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;(2)  In the fourth quarter of fiscal 2021, the Company acquired three companies: Nordic ID, Magicard, and Code. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The operating results of the acquired companies are included in the Company&#x2019;s consolidated financial statements from the date of acquisition.&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;(3) &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the fourth quarter of fiscal 2021, the Company recognized other-than-temporary impairment charges of $4,994 of its equity method investment in React Mobile, Inc.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:Revenues
      contextRef="ic4f73b73cd094694ac7578614de5a466_D20190801-20191031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzMtMi0xLTEtMA_d87b7803-668c-48b1-ab31-725e6e7c7a02"
      unitRef="usd">286947000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ibbab856dfba54037ba530f21c1149b1f_D20191101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzMtNC0xLTEtMA_ce24d707-beae-4fd4-ae64-329ff1206f2a"
      unitRef="usd">276665000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i0be020c50b3f4ba39fb55b8f19ad7ed6_D20200201-20200430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzMtNi0xLTEtMA_bf47b992-497a-4477-95fa-f57b9939fcbb"
      unitRef="usd">265943000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i90e7b62bd71e43c3a4817d139f0f5d5b_D20200501-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzMtOC0xLTEtMA_d2bd934a-5dc0-4bc0-9a7a-da6680c5e915"
      unitRef="usd">251744000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzMtMTAtMS0xLTA_21ca78dc-a4b6-44dd-9ed8-9ef51b99c87e"
      unitRef="usd">1081299000</us-gaap:Revenues>
    <us-gaap:GrossProfit
      contextRef="ic4f73b73cd094694ac7578614de5a466_D20190801-20191031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzQtMi0xLTEtMA_ca26bdab-fa7f-42d3-870f-8bb3dc8f3acb"
      unitRef="usd">141405000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ibbab856dfba54037ba530f21c1149b1f_D20191101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzQtNC0xLTEtMA_3970bc7f-e058-4112-a6e7-8781396cfa77"
      unitRef="usd">139127000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i0be020c50b3f4ba39fb55b8f19ad7ed6_D20200201-20200430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzQtNi0xLTEtMA_d039a76d-abe1-4a25-92d9-6e84324e076e"
      unitRef="usd">129527000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i90e7b62bd71e43c3a4817d139f0f5d5b_D20200501-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzQtOC0xLTEtMA_94bae735-edfb-4b56-a496-f5fae1cf218d"
      unitRef="usd">118506000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzQtMTAtMS0xLTA_71596d7d-948f-447f-b8f7-8c20d0a87ada"
      unitRef="usd">528565000</us-gaap:GrossProfit>
    <us-gaap:OperatingIncomeLoss
      contextRef="ic4f73b73cd094694ac7578614de5a466_D20190801-20191031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzUtMi0xLTEtMA_28f65ab5-6d22-4e31-815e-6d4ca828de53"
      unitRef="usd">40891000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ibbab856dfba54037ba530f21c1149b1f_D20191101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzUtNC0xLTEtMA_a0820a38-9510-47c6-b5c5-2e1ecc385423"
      unitRef="usd">41244000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i0be020c50b3f4ba39fb55b8f19ad7ed6_D20200201-20200430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzUtNi0xLTEtMA_461908c7-64ca-48f8-96ea-7e76ca54185b"
      unitRef="usd">22669000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i90e7b62bd71e43c3a4817d139f0f5d5b_D20200501-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzUtOC0xLTEtMA_17f7448e-4c91-47f3-b774-151ecc39c6fb"
      unitRef="usd">33219000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzUtMTAtMS0xLTA_1002703b-c216-4217-b1cb-8276db967c05"
      unitRef="usd">138023000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="ic4f73b73cd094694ac7578614de5a466_D20190801-20191031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzYtMi0xLTEtMA_62c4558a-5ad5-46f7-b979-e29be7748c3a"
      unitRef="usd">37498000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="ibbab856dfba54037ba530f21c1149b1f_D20191101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzYtNC0xLTEtMA_2c9b5222-7a94-43b4-a33a-ca959196452e"
      unitRef="usd">33553000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i0be020c50b3f4ba39fb55b8f19ad7ed6_D20200201-20200430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzYtNi0xLTEtMA_c31b0e3d-a2b4-4991-b7a0-bef471847e9f"
      unitRef="usd">13633000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i90e7b62bd71e43c3a4817d139f0f5d5b_D20200501-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzYtOC0xLTEtMA_be6fbc37-5739-4a61-a47f-4d80e83e74dd"
      unitRef="usd">27685000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzYtMTAtMS0xLTA_6314d47e-c299-4dfa-87a6-a6d6a34caa20"
      unitRef="usd">112369000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:EarningsPerShareBasic
      contextRef="i4dc29ccfd9994d14804e5dfc6ea1c7d3_D20190801-20191031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzgtMi0xLTEtMA_8419947a-3751-47fa-bbf1-1e43368bd835"
      unitRef="usdPerShare">0.71</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i83044ff10f464619b3104ed84014e03c_D20191101-20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzgtNC0xLTEtMA_a2f4da75-ba83-45d1-90c4-d51f47dc8dde"
      unitRef="usdPerShare">0.63</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="iaa5bbee9206549d5a50d1f77fffbeffb_D20200201-20200430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzgtNi0xLTEtMA_4a91aa47-74a2-416a-8cf1-f3ed0a9101b1"
      unitRef="usdPerShare">0.26</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i295bc144201d47dabdc3a25e297297ff_D20200501-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzgtOC0xLTEtMA_ece07b89-535e-47ea-93d1-c637cad7b3f3"
      unitRef="usdPerShare">0.53</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzgtMTAtMS0xLTA_56ee8dca-ec65-4d1a-b5a5-fc0bccd902bf"
      unitRef="usdPerShare">2.13</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i4dc29ccfd9994d14804e5dfc6ea1c7d3_D20190801-20191031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzktMi0xLTEtMA_e3506d5a-897f-49fc-b489-eeddded414fe"
      unitRef="usdPerShare">0.70</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i83044ff10f464619b3104ed84014e03c_D20191101-20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzktNC0xLTEtMA_0c4226ff-3833-48b3-862f-081c9c1eb6c4"
      unitRef="usdPerShare">0.62</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="iaa5bbee9206549d5a50d1f77fffbeffb_D20200201-20200430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzktNi0xLTEtMA_6eaab6d4-c486-41d7-8b77-514a5c7a9203"
      unitRef="usdPerShare">0.26</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i295bc144201d47dabdc3a25e297297ff_D20200501-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzktOC0xLTEtMA_85267fdd-a33e-4a81-9910-1528fa93e2e7"
      unitRef="usdPerShare">0.53</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia6eea4adf79e412585051a5c9324ba32_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzktMTAtMS0xLTA_da0c3ad8-b910-4b0c-952a-742bfd8f1763"
      unitRef="usdPerShare">2.11</us-gaap:EarningsPerShareDiluted>
    <us-gaap:Revenues
      contextRef="i04e3fdfb5e224ce094aab71e4ee8c7b8_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzExLTItMS0xLTA_a6a52d34-e6a6-465d-8fb0-49ed23697e8d"
      unitRef="usd">277227000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i0a6c74c60e8449beba543c985c131f36_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzExLTQtMS0xLTA_364cdaa1-0ae4-404d-aae1-eb9723d732f3"
      unitRef="usd">265838000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="icd47d892bc2944a998c3258eca4d30cb_D20210201-20210430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzExLTYtMS0xLTA_b75c5561-a296-4f33-af21-652acbc07269"
      unitRef="usd">295503000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6017aa27d63f4f43af0de8c1088b9a39_D20210501-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzExLTgtMS0xLTA_a25d7ac6-c389-4379-8ccc-34669dab6516"
      unitRef="usd">306130000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzExLTEwLTEtMS0w_d35db0a4-8658-4b48-ad87-85a1dd0a36cb"
      unitRef="usd">1144698000</us-gaap:Revenues>
    <us-gaap:GrossProfit
      contextRef="i04e3fdfb5e224ce094aab71e4ee8c7b8_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEyLTItMS0xLTA_b97cb7e3-ecc6-4b08-b4e4-aecb495a9844"
      unitRef="usd">135428000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i0a6c74c60e8449beba543c985c131f36_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEyLTQtMS0xLTA_9b0c7ded-1fb4-41dc-9d2b-184c1355a98a"
      unitRef="usd">129522000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="icd47d892bc2944a998c3258eca4d30cb_D20210201-20210430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEyLTYtMS0xLTA_71147ca1-3855-468b-9582-380dbeae5322"
      unitRef="usd">148847000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i6017aa27d63f4f43af0de8c1088b9a39_D20210501-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEyLTgtMS0xLTA_edd6a204-3590-40ae-babe-3ca615cdde64"
      unitRef="usd">147649000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEyLTEwLTEtMS0w_2b60ebe5-ef11-400d-9c29-8cadf22415d7"
      unitRef="usd">561446000</us-gaap:GrossProfit>
    <us-gaap:OperatingIncomeLoss
      contextRef="i04e3fdfb5e224ce094aab71e4ee8c7b8_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEzLTItMS0xLTA_7856f464-ace1-40b4-912f-a138d72fef01"
      unitRef="usd">42188000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i0a6c74c60e8449beba543c985c131f36_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEzLTQtMS0xLTA_823f1958-51fa-4501-a421-4e9572eb7d73"
      unitRef="usd">37412000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="icd47d892bc2944a998c3258eca4d30cb_D20210201-20210430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEzLTYtMS0xLTA_c72aea1f-d0dd-456a-80af-b670e25d79d8"
      unitRef="usd">46725000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i6017aa27d63f4f43af0de8c1088b9a39_D20210501-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEzLTgtMS0xLTA_ec3ec05f-2b50-4123-9726-5b5bab0efea1"
      unitRef="usd">40802000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzEzLTEwLTEtMS0w_3f36ca98-e6b0-4c9c-8e17-f340833ad97b"
      unitRef="usd">167127000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i04e3fdfb5e224ce094aab71e4ee8c7b8_D20200801-20201031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE0LTItMS0xLTA_0854fc07-3e5d-4c81-ac08-b6dd52680cc5"
      unitRef="usd">33481000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i0a6c74c60e8449beba543c985c131f36_D20201101-20210131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE0LTQtMS0xLTA_79b50cca-e535-4717-a6e3-cc27eb843778"
      unitRef="usd">30860000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="icd47d892bc2944a998c3258eca4d30cb_D20210201-20210430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE0LTYtMS0xLTA_68e157e7-f1bc-40cb-b85e-1c6521b1e35d"
      unitRef="usd">37291000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i6017aa27d63f4f43af0de8c1088b9a39_D20210501-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE0LTgtMS0xLTA_05e94c7e-073c-4269-a7e0-c49e20cc564c"
      unitRef="usd">28027000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE0LTEwLTEtMS0w_8081cc04-25b0-48a1-8c21-db85c61e94b1"
      unitRef="usd">129659000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:EarningsPerShareBasic
      contextRef="if6b4159c5efe4db295aa9b41dff9981d_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE2LTItMS0xLTA_85cd51ee-6bcf-418e-b30f-0f1eed7f4184"
      unitRef="usdPerShare">0.64</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="iec2a2891702f49708a408d94fc0a5983_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE2LTQtMS0xLTA_b247aeb9-b43a-44a8-8bf4-d761386e15b8"
      unitRef="usdPerShare">0.59</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i44cce58895144ac6a11ef3ab7cba2386_D20210201-20210430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE2LTYtMS0xLTA_eb4eb710-d9e9-4ef9-8e37-9cdc1c146d00"
      unitRef="usdPerShare">0.72</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i19c9fdb1594d4ec3b2b8b1263c7e0c51_D20210501-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE2LTgtMS0xLTA_aefb8cff-3b96-408b-9999-d61f3be7edf8"
      unitRef="usdPerShare">0.54</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE2LTEwLTEtMS0w_32d2ab93-0b57-4953-8fae-f9836a4cd835"
      unitRef="usdPerShare">2.49</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="if6b4159c5efe4db295aa9b41dff9981d_D20200801-20201031"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE3LTItMS0xLTA_0a69a636-091a-4f27-a092-8d4dce5c778a"
      unitRef="usdPerShare">0.64</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="iec2a2891702f49708a408d94fc0a5983_D20201101-20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE3LTQtMS0xLTA_c44046a8-8f01-4d33-a2a4-b46f26c2c05e"
      unitRef="usdPerShare">0.59</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i44cce58895144ac6a11ef3ab7cba2386_D20210201-20210430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE3LTYtMS0xLTA_43c3bcab-c78d-4642-9e89-61ae7c404da5"
      unitRef="usdPerShare">0.71</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i19c9fdb1594d4ec3b2b8b1263c7e0c51_D20210501-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE3LTgtMS0xLTA_23fab557-3ed8-4d07-96e8-bfcdf95c3a93"
      unitRef="usdPerShare">0.53</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90YWJsZTpkNDAzN2VmNzE4ZGE0MDlhYTQzZGNmNTUyYTEwNDBlYi90YWJsZXJhbmdlOmQ0MDM3ZWY3MThkYTQwOWFhNDNkY2Y1NTJhMTA0MGViXzE3LTEwLTEtMS0w_3dd3a333-2f93-4d04-b90f-994df1474f90"
      unitRef="usdPerShare">2.47</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AssetImpairmentCharges
      contextRef="i80efffe1d2e04454b1cf5a6ce1990470_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjYvZnJhZzpmMTFhMDU1Yzk1NjQ0YTIzYjc2OTVhNGU2MTI1MmFkNS90ZXh0cmVnaW9uOmYxMWEwNTVjOTU2NDRhMjNiNzY5NWE0ZTYxMjUyYWQ1XzE0Nw_1fe75b54-0714-47f0-9d3b-8f6eac162ecf"
      unitRef="usd">13821000</us-gaap:AssetImpairmentCharges>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjkvZnJhZzo2NWM4YTE2MTJjOTU0NTQ4YjI5Mzg5MzZkMTFkOGRkNS90ZXh0cmVnaW9uOjY1YzhhMTYxMmM5NTQ1NDhiMjkzODkzNmQxMWQ4ZGQ1XzM3NQ_69a8a468-c306-45bd-a3fe-b5fcd6a20345">Subsequent Events&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On September&#160;1, 2021, the Company announced an increase in the annual dividend to shareholders of the Company's Class A Common Stock, from $0.88 to $0.90 per share. A quarterly dividend of $0.225 will be paid on October&#160;29, 2021, to shareholders of record at the close of busines&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;s on October&#160;8, 2021. This&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; dividend represents an increase of 2.3% and is the 36th consecutive annual increase in dividends.&lt;/span&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="ide7a6a44a0214e618894e85630f55511_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjkvZnJhZzo2NWM4YTE2MTJjOTU0NTQ4YjI5Mzg5MzZkMTFkOGRkNS90ZXh0cmVnaW9uOjY1YzhhMTYxMmM5NTQ1NDhiMjkzODkzNmQxMWQ4ZGQ1XzE1MQ_db7d9c01-6613-48db-aad3-2cf8de7b5a17"
      unitRef="usdPerShare">0.88</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="i6e8379a424d842319bbb12987845c98a_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjkvZnJhZzo2NWM4YTE2MTJjOTU0NTQ4YjI5Mzg5MzZkMTFkOGRkNS90ZXh0cmVnaW9uOjY1YzhhMTYxMmM5NTQ1NDhiMjkzODkzNmQxMWQ4ZGQ1XzE1Nw_20cca131-694e-4e50-8949-412be0902682"
      unitRef="usdPerShare">0.90</us-gaap:CommonStockDividendsPerShareCashPaid>
    <brc:PercentageIncreaseInDividend
      contextRef="i6e8379a424d842319bbb12987845c98a_D20210801-20220731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xNjkvZnJhZzo2NWM4YTE2MTJjOTU0NTQ4YjI5Mzg5MzZkMTFkOGRkNS90ZXh0cmVnaW9uOjY1YzhhMTYxMmM5NTQ1NDhiMjkzODkzNmQxMWQ4ZGQ1XzMxNg_1f596b8a-2c07-44db-8b49-5aa2c2287c62"
      unitRef="number">0.023</brc:PercentageIncreaseInDividend>
    <dei:DocumentPeriodEndDate
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8xODQvZnJhZzo5ZjllZDk0Y2UzOGI0MmEzYTk0NTQwMzZmOTQwM2VmOS90ZXh0cmVnaW9uOjlmOWVkOTRjZTM4YjQyYTNhOTQ1NDAzNmY5NDAzZWY5XzIxOTMy_3d111d66-bab0-4527-a0ea-25c0aa767dca">2021-07-31</dei:DocumentPeriodEndDate>
    <srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock
      contextRef="i6c8526398be24e368b53989654ad90b4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90ZXh0cmVnaW9uOmZmNGE5Mjk0ZDJkMTQyOTk5NTg5ZGIzNDVjOThjZjZlXzkz_68624f1c-2e01-48e2-8602-68a3a6b44c09">&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:120%"&gt;SCHEDULE II &#x2014; VALUATION AND QUALIFYING ACCOUNTS&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.445%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.416%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.418%"/&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:9pt;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="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:9pt;font-weight:700;line-height:100%"&gt;Year ended July&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #ffffff;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:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #ffffff;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:9pt;font-weight:700;line-height:100%"&gt;2019&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:9pt;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="15" 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:9pt;font-weight:700;line-height:100%"&gt;(Dollars 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:9pt;font-weight:400;line-height:100%"&gt;Valuation accounts deducted in balance sheet from assets to which they apply &#x2014; Accounts receivable &#x2014; allowance for credit losses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,157&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,005&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,471&#160;&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions &#x2014; Due to acquired businesses&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:9pt;font-weight:400;line-height:100%"&gt;388&#160;&lt;/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:9pt;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:9pt;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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions &#x2014; Charged to 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:9pt;font-weight:400;line-height:100%"&gt;803&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,495&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;587&#160;&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deductions &#x2014; Bad debts written off, net of recoveries&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:9pt;font-weight:400;line-height:100%"&gt;(1,042)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(343)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(53)&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at end of period&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,306&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,157&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,005&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Inventory &#x2014; Reserve for slow-moving inventory: &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,309&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,404&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,582&#160;&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions &#x2014; Due to acquired businesses&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:9pt;font-weight:400;line-height:100%"&gt;2,957&#160;&lt;/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:9pt;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:9pt;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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions &#x2014; Charged to 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:9pt;font-weight:400;line-height:100%"&gt;4,908&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;5,722&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3,168&#160;&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deductions &#x2014; Inventory write-offs&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:9pt;font-weight:400;line-height:100%"&gt;(1,165)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,817)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,346)&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at end of period&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-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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;23,009&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,309&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,404&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Valuation allowances against deferred tax assets: &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;58,809&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;60,073&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;56,866&#160;&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions &#x2014; Due to acquired businesses&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:9pt;font-weight:400;line-height:100%"&gt;1,351&#160;&lt;/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:9pt;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:9pt;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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Additions &#x2014; Charged to 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:9pt;font-weight:400;line-height:100%"&gt;4,168&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;6,204&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;5,981&#160;&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deductions &#x2014; Valuation allowances reversed/utilized&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:9pt;font-weight:400;line-height:100%"&gt;(13,259)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(7,468)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(2,774)&lt;/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:justify;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balances at end of period&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51,069&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;58,809&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;60,073&#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;</srt:ScheduleOfValuationAndQualifyingAccountsDisclosureTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ie8f51295d4b14fdb938e95546fc0f6d0_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzQtMi0xLTEtMA_b5a424b4-1a3f-4744-9c31-c9f28b8bfe23"
      unitRef="usd">7157000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ief90451ec12d400e9a5b93763bb2f204_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzQtNC0xLTEtMA_abc83fb6-b1f6-4d66-afef-4d7880aa9573"
      unitRef="usd">5005000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ifd4836a4eade465c919b5459598ab9ae_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzQtNi0xLTEtMA_26c5e2d4-0866-4d88-b7cd-76d7852757c9"
      unitRef="usd">4471000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="i68b3d373747f417fb27deb8a8055f391_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzUtMi0xLTEtMTE5MTk_3dacb918-cf25-4ebe-97d4-d45f1401e328"
      unitRef="usd">388000</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="i0ecd59d4840743e1a2249260a1b5c46d_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzUtNC0xLTEtMTE5MjY_33af5327-4a51-4efe-85c6-cd3ae3d5cb74"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="ida4680c40de6403f90af1aa844b2657b_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzUtNi0xLTEtMTE5Mjg_fd854e83-139e-46f0-a81c-64143c6ef299"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i68b3d373747f417fb27deb8a8055f391_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzUtMi0xLTEtMA_263150da-cb50-4da1-8a47-3e875c98a69b"
      unitRef="usd">803000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i0ecd59d4840743e1a2249260a1b5c46d_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzUtNC0xLTEtMA_aa76b1d1-1471-4194-8182-f45c9e492f03"
      unitRef="usd">2495000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="ida4680c40de6403f90af1aa844b2657b_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzUtNi0xLTEtMA_151dfc16-3e5b-493a-bd47-f572343cd031"
      unitRef="usd">587000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i68b3d373747f417fb27deb8a8055f391_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzYtMi0xLTEtMA_128c84d0-79ca-4511-8df0-2fc715cf691b"
      unitRef="usd">1042000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i0ecd59d4840743e1a2249260a1b5c46d_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzYtNC0xLTEtMA_e9ffc62d-dfaf-4f1d-8314-8c6c5bfc7bfd"
      unitRef="usd">343000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="ida4680c40de6403f90af1aa844b2657b_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzYtNi0xLTEtMA_2e51dc4d-d638-4399-8a45-3c676580fce8"
      unitRef="usd">53000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i2783b63c005a40828c37ea7e1af83043_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzctMi0xLTEtMA_135749a0-1e09-4ed4-8127-f74bef4df657"
      unitRef="usd">7306000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ie8f51295d4b14fdb938e95546fc0f6d0_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzctNC0xLTEtMA_21c191aa-406d-4291-942c-544ed70d99f2"
      unitRef="usd">7157000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ief90451ec12d400e9a5b93763bb2f204_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzctNi0xLTEtMA_d53e96c2-254a-4e5b-85d7-58eeee3e1761"
      unitRef="usd">5005000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ia848dcb8bfb8409e854596f960edec08_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzktMi0xLTEtMA_5ff79017-729c-4166-98ed-849fef4d0978"
      unitRef="usd">16309000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i22595830e1e04baa90096ba94d4dad17_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzktNC0xLTEtMA_5f90865c-c4e0-41e2-baf0-27393296ab80"
      unitRef="usd">13404000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i2c1ef8d0937a411596a571b60592a228_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzktNi0xLTEtMA_3cb0b8cf-383c-45f9-a67a-a116a8c11ed3"
      unitRef="usd">12582000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="i2550129d29994386ba0b74ef3c278536_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzExLTItMS0xLTExOTUw_91fc7f93-155f-45fd-84c0-3ffb1ed863e2"
      unitRef="usd">2957000</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="i78bb928542e44f8e8baf25b8f6ed7f89_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzExLTQtMS0xLTExOTU3_650342d4-2832-4e2f-8311-8a866bfcaaea"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="ib9af162b7e8248c49b76cbaca6b57f19_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzExLTYtMS0xLTExOTYw_29436062-97cc-4de8-92c5-e58345f05bda"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i2550129d29994386ba0b74ef3c278536_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzEwLTItMS0xLTA_02ef3235-bdbb-418a-9829-986094d3511f"
      unitRef="usd">4908000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i78bb928542e44f8e8baf25b8f6ed7f89_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzEwLTQtMS0xLTA_1247e0f4-2e09-4282-9861-47613a24d3ec"
      unitRef="usd">5722000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="ib9af162b7e8248c49b76cbaca6b57f19_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzEwLTYtMS0xLTA_7ff651fc-0f00-4385-a88e-55bdcc5c201e"
      unitRef="usd">3168000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i2550129d29994386ba0b74ef3c278536_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzExLTItMS0xLTA_d10be1f4-61df-4d70-958a-e16aef102da1"
      unitRef="usd">1165000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i78bb928542e44f8e8baf25b8f6ed7f89_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzExLTQtMS0xLTA_70fce6b9-12b5-4177-b046-133ede39bb7e"
      unitRef="usd">2817000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="ib9af162b7e8248c49b76cbaca6b57f19_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzExLTYtMS0xLTA_bcb8b6d8-e2f2-4162-a1fa-d49919335680"
      unitRef="usd">2346000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ifb5dbf1769fe4eb6b4af78ed689ce68f_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzEyLTItMS0xLTA_8b015dcd-651e-464b-972e-89b78f2248d4"
      unitRef="usd">23009000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="ia848dcb8bfb8409e854596f960edec08_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzEyLTQtMS0xLTA_99923af9-41b6-4231-86e6-9c9e1363c223"
      unitRef="usd">16309000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i22595830e1e04baa90096ba94d4dad17_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzEyLTYtMS0xLTA_f8da122d-4144-45e0-a79a-9191357103db"
      unitRef="usd">13404000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i4b81bd651ef64df8b5d5657d6c0c8acd_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE0LTItMS0xLTA_3088e9ef-1f2a-4482-a344-74e49ca63cc5"
      unitRef="usd">58809000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="iffb6daad37d44ec093db04af45e2f3d0_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE0LTQtMS0xLTA_dcd96e6e-12f1-448e-92ab-bfc723fec635"
      unitRef="usd">60073000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i4f0a8fe238db44ae825ccd9f623865a8_I20180731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE0LTYtMS0xLTA_d18ea60a-ba8e-4538-8bc5-84c71c1376c9"
      unitRef="usd">56866000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="i0f88ff4fb0ec443ea40ff17b8eef5ce0_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE1LTItMS0xLTA_70af4b3a-a1cf-4906-93af-f1305e934427"
      unitRef="usd">1351000</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="ibd1585f63c95441dad0dc6f71f30b65c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE1LTQtMS0xLTA_59570359-2e63-44c6-ae5d-c7d0f1af6c32"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="i66804e23e9c74573a6b3f6081a78a7c8_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE1LTYtMS0xLTA_e838ad06-0b7a-4531-8c80-2b2ea2a549f8"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i0f88ff4fb0ec443ea40ff17b8eef5ce0_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE4LTItMS0xLTExOTMx_dd2a0608-e59e-4e9f-af3e-be02f4fd5a3f"
      unitRef="usd">4168000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="ibd1585f63c95441dad0dc6f71f30b65c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE4LTQtMS0xLTExOTMz_04234e4e-82a6-413b-a389-f732a8d688eb"
      unitRef="usd">6204000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="i66804e23e9c74573a6b3f6081a78a7c8_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE4LTYtMS0xLTExOTQ2_a6386007-69e8-44af-92db-815302c07885"
      unitRef="usd">5981000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i0f88ff4fb0ec443ea40ff17b8eef5ce0_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE2LTItMS0xLTA_b454e6cb-cf62-4a37-a684-7aa5db5973e0"
      unitRef="usd">13259000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="ibd1585f63c95441dad0dc6f71f30b65c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE2LTQtMS0xLTA_f627a7b9-6593-44e4-86f6-2762c7225bf5"
      unitRef="usd">7468000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="i66804e23e9c74573a6b3f6081a78a7c8_D20180801-20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE2LTYtMS0xLTA_505a9afd-db1b-4eb9-a7da-77a4a9eb734e"
      unitRef="usd">2774000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="id1092afa2d304c16bca7d2616aafdb7b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE3LTItMS0xLTA_d35a0bbf-9505-4616-9e55-fe0835cad462"
      unitRef="usd">51069000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="i4b81bd651ef64df8b5d5657d6c0c8acd_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE3LTQtMS0xLTA_7b7b365f-d83f-444e-b6ad-fdade887740b"
      unitRef="usd">58809000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="iffb6daad37d44ec093db04af45e2f3d0_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjVjNzliNTk3MzcyYjQ1YTc4MWMzOWE5YzE5ZThiODA2L3NlYzo1Yzc5YjU5NzM3MmI0NWE3ODFjMzlhOWMxOWU4YjgwNl8yNTAvZnJhZzpmZjRhOTI5NGQyZDE0Mjk5OTU4OWRiMzQ1Yzk4Y2Y2ZS90YWJsZTo0NTJjNTdlNzIxODI0MzI1YmUxMjQ0ODY4NzQ3YjJlNi90YWJsZXJhbmdlOjQ1MmM1N2U3MjE4MjQzMjViZTEyNDQ4Njg3NDdiMmU2XzE3LTYtMS0xLTA_685ffda3-6c53-43dc-93e4-4a31231c0ed4"
      unitRef="usd">60073000</us-gaap:ValuationAllowancesAndReservesBalance>
</xbrl>
