<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:gwre="http://www.guidewire.com/20220731"
  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:stpr="http://xbrl.sec.gov/stpr/2021"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="gwre-20220731.xsd" xlink:type="simple"/>
    <context id="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i1860d686c2a54d5aaf6c90b53aaa9d15_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i03e64652f4bf4f9f93d1e388bd34b014_I20220831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2022-08-31</instant>
        </period>
    </context>
    <context id="i199383bee8bd45a19f5f7d5465bda067_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i5699e04baa4347908c7e2d08e9ccdecb_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ic41cab7815da4fecbc7503a51b657371_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i46144352023644c7bef44662217ca0b1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i7b7834783fb642c4868f4c9d80caedbb_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ica6488de9ffa49dc95c1cd529dce7fa5_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iaf63f09bdab243779942deb891570dd4_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i6b37bf3bc9a54fdeb32d4acbeb1a550e_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i32974e5d7d944b538914d4f6be8b5b0e_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i6929d8b010564fe78e0d072352211ab5_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if4509243db0d471a9c3d916e035fc2b9_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i0dcf770270284b5b91327c2a8025017f_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="ieca6b5ba1c374b9bbfa9ea5dcb48afb1_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="ib1568476e7814437922dee0677209c05_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i4d421e709f9f4ef2b1383369ff8b5187_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i9300d1a4bf04432fbe945f1baf5953eb_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="if556ffde9aed4a7183293e6604461d43_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i2f3463a518a64121924674bd99de8599_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i7549c7d4ff1f432ba7519eeb62858ace_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="ibfc2855e37324ee8bd32fa71356d5f77_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i9c448ab72c874db1b1e113be39f2505f_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i6e1fbd4810704555a69ac7147b63036d_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="icc0bfb7f39cb4b9997c938359303273d_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="i4d995895787d4a8d82c5fb1fe1486050_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="idbe395d0f47641cc92b1cad75fd0c710_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="ia48ac9a28dad4f9db99d2bad8707abe4_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i6a2888c633f7452889383c2073819d36_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i3f435c2c5e284eb783f1145d86002e48_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="if3ed481d3e854fc6908596f23d335a31_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="if5e94883b0cb4516b4387bf3b76eb05d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ie1c43e0857394913969c2f35ffea35d1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i36ffb2778cd44b9fa19659ee628122c2_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="ibe72a1ed1fd3414a8b0628cc817abaf5_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ie766fc043f1e4110af9b80e468c1ec02_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i2550876010154261b3deaacc50ade084_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i8a3b15ba842b48a59133a2f0b9349739_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="ied8f13e258824b4aa803ce6f466aee32_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i7d082b3ed16845c3b4056edf3b413c98_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="idde3dabf9d0743709cddb95627e7d759_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i4af62753fb974aa2892de2477dfe407e_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="id68de20a11504e7c90f15453a37d7348_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ifd3db0de78ae4d638ef23cdbf44f6187_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ie7d3e92d8fa946f3a16c577215f9103d_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i9183bb4be0db4576870631f5926bd1a8_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="id7e819f3a81b4325afb3fd45707fdb0a_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iafc75198a1f348db9532f5331697c736_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerSoftwareIntangibleAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i88667aa326904fb58ca9e0ece0920e95_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i6ca5fdba7a484aa5a8c1542647d8e5d3_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i929d93a0ce264e2fa55c7b45f0ac2afe_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i8a0e59d3d16f4fe38513ca04e0dab7a1_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iab0c93caf8664302aba70edad723839b_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i5168c5af4d534b3fba898acbd66aeb39_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="if795368b515449f4b52349f1a7bd4733_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i52bd6114fabd423a8891477282a8728b_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="id604afc52512408d8e9d47b596579168_I20180331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">gwre:ConvertibleSeniorNotes1.250Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-03-31</instant>
        </period>
    </context>
    <context id="ie31595e4e53a4929815391d1e3905932_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ic609b76953cb4d2e9fc3c2c8a03d0a81_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gwre:TotalShareholderReturnPerformanceSharesTSRPSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i60ad934a82d44c62ba1af77e2fc4c489_I20220801">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-08-01</instant>
        </period>
    </context>
    <context id="ieb6623b33ddb4e9db3a549025c00d172_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i880ec838339342d696740077ad14a819_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib0fe1f607343457bb656f40f4a6bb17e_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i9a5ae6f908e54ea590cba92dd6f3c1a3_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SupportMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i0e61945d57e94287aeab0c24807f81ea_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SupportMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i7eae556657594eafb9a403b2c07be6e0_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SupportMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i21cdb76ec03247c085e4bd2a2ba7cd51_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:TermLicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i7c54a1f332f3447ca591adc14dbf5308_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:TermLicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ic332ba0aae2b42abad14b4939d16a801_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:TermLicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i6f4f078f36c84f0aae6044de513b1d4c_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:PerpetualLicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i1eae7173f6dd4586856e2dec8f71a8fc_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:PerpetualLicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="if445cb81288449e78f8c326d3aedb6eb_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:PerpetualLicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i0a40fe9bab394e47bbed84455d8f9596_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ib5fa334612774311849133de5c88c0c4_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="id9b5fd945ffb4fa9a1e1aad167909de4_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ie87287d2e79e44ceae622e107dcb3777_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i8e6a9e478582463b9a3e52a1bd8f0bf7_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i0a9f9322c6a14f0589a82496bbbd00b3_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i3bf1ee3bcefb4c82a058519feb94236d_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i90e9b64e981a488babca97ee637ac872_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i38126977f36e48b19a2b176fff40fc19_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iab5b4dd1526245359fcffe42cce1d106_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i2d71eb39797846898923eccbbc60df6b_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i413d6c3159d941168e0d2f5ecd0306bd_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iaffa67f6c0bc4d4183c79ef5c0a0bd3d_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i7eeb130ee6534822aa08a468d253891b_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i035164729c7a465e899e66a6b3740daa_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i97b1aaf366a84b11852fc7bc8e70f185_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="if337e9d92b044da7996c776920941e42_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="icddee4cc6f144ece9cdd4b10f30810d7_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i33e138c76f6f46a2a275b87f308c13a2_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ia2d2dff4ea5a4700b6aa6047170dc3de_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i5ce5adeaa761445599ba5ecb60e21127_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i1cd5482702334372952fcbe2fc8e4805_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ie2b087355ea24f488a03cb1c4080fff1_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i986740f6bb3243bf92df75839759cc7d_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ief2820fd34c84304bdd21efd7a93e1d0_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i977f4f1f19824fab9f3ba3423fa19f26_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ie835066d2af048499054c88e5367e35c_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ib85d156cf1b7459c94f8ac89bac4994c_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i583384f71f7d41beb97f348ec2f51631_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ic7ff094d322447b4a63e04824394bc89_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i1012a23ddc8d4acd83d3cc58d31b43e3_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i8c93381d3e5244fda805d6f1c2f1b57f_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i77e55d319f8c491eb3799d6d4e66a145_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <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="idebfdb2059974497bca2c03a83c61f14_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <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="i9bcc2d2982714ca09afa86556cec042f_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <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="ia2ead094c1734a07868843183f22e3a6_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i37c0808451f64a4cb28146ab4aa24df2_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i6688fd6222c24c8985cab771f1d20a8e_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib57f8d49195b4e4d85f93fd74e7b3993_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i0d480a0bcc82442894bb187d93f05bbe_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i24a3ee8ce31b48da98239b7357b0be85_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i598cce2fe22944e39175541e26ed2ec3_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i58f7ef58b0154f8fafecb32649260119_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i927b739003fd495d83e6c199e14b12ab_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i66a90d9b370e4160850519ae1734e5c5_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <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="i5f9180a9af2e4cd198661b9277cb8ea9_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <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="i6a2876187d6345c58698d26a6c3e8a1a_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <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="ia547cd6ff7c04594b51cbcaace1f1618_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i95cab5d2c6dd4ac696bc757d7657704d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i0a3077d932424b92a02330b404245f2d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i29b82646eb034f958447c10ed7272928_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i86f0b640b05745cbb2015e8646b963f6_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i1b73a41892644fb2991072959b8c8dcb_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="iee4d7e730c2941bc847f708e4c745712_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ia40c929b47dc4de58c26880423f32492_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i191c3d5759f940caabd619081bd2e834_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i4221393b980345e5814b0c3a793b3c9b_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i601a2793cdd34f6591221cab512c3055_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="icb3abb38682f4bad8d077e2f12b53fc1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib943c6a8e65440e9ba50b0e563a59bab_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i61a9ca9088ff46359ea6f365857d742a_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i511ee6a427294d0ca24028e4d4d81608_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i712f58223e214ec288b422470cfaa4e1_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i507ada90fd6f44dfbc2b15c2d7c9ede7_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ia32e3930011c4cf19bb89935494b1f81_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <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="ibc1275d4859e4102b507ad24bb2393d1_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <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="i973b245b3cfe48e68afdd71de6abe2e4_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <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="id66c30d8cfeb480ea673012c5ba0f2e8_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="ibc133adb6f174946ab54e8a111f0c92b_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ia99cca87088a47c982280145654cba10_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4df3d8c5ca664946ba285a6d86131661_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i8f030a4387454ab5b7958411fade939e_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="iff80cd1f215d48668c457d45c53aa5a9_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ia1ca63914c244c57bc24a126df8ae9cf_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i415a35b645e248499307e5976c8d99b6_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4aff8cd067a44a3397712ee38849529f_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherAmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ifead6ef7f64f45ff8d325ca0233baded_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <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="id6f243b3c4384b16ae21fb85f88cc80c_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <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="i7941f97f32e74453b86013d6c362e0dd_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <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="i6132620b6f9948cb8e732a51681ee134_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="iabe3c3f571ad4ebd83e34b34679fb81e_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i36d99f1ed3ac4447b149abe79eee29cf_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i93e9abc73ab44be9aceffd424298356b_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ie47a7da843db47ce894df601af34cd82_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:GB</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="idbe33f20b5b74ddebb0ae9d8257e7388_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i8d8435aa5aa84f31b7c0f07ec59f84d7_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ia172d668549b4a03bb9b7980e1d67eb7_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i70904a894b9749dd96eeae758c748cbf_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:OtherEMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i21e9700374694eb5a9a4db332466f684_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i95c8ffc2b45a44358e644ddd323798f6_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i57a05629755d4ff880d282df2863b93a_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i0fa6091aaac0455eb9d50f4cd20915a0_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i7a304d0e576a492d9942e4ce81560dea_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gwre:SubscriptionAndSupportMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ib7406eda581d4ab5b8e6bcd1a7301cf6_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ic631934413e74109b39991af7f0dd9a9_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ieb161fb8fea44235bb71b4b1d49c81dc_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ie562d854fa874530a77846e9ed29e3ab_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="if97f3d86b9b74810ab637a51a5e2b357_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="iabf7229d0dd54135960fde8a036686b4_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i5f62c39ea2e843bcbfae517e29991566_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i1fb2f34a5026478eb8bac452a8bc3309_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i0389d693acb44303acc9bed3c60afc92_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i150d27f84dc64ff9b9cfab649a38eb92_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ic9500be87dd244ef94db77ac3ba5d47c_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="iaf922660c97245b5934c5e91363bb7b9_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i9fd2de6d97f94efaa082f38296a86187_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i0373a480e1e34bf280707c201a77c835_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i538e753e8778451c85461ce2e7968ffa_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ic8974b3151e34da3838f54b6a3a474d0_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1af67832452840318dc09e021e2ef194_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if05f4128aee3410bb3bc56bb00538fd9_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i3e6598755e654042839a6587840dbcff_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1d4cb80e49cf4ff19b676be35a7a7d87_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i0f7d81c84710498ba6810bb29681506b_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i18a4e147e7024a8c8b4019430192bae7_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i47b6e38958494a93a7a259940f5e6b9d_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i96937d34327d4d73ab0f35b9449e8a9b_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i4ccbdb6fc66843029bdd621c02740498_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i3978a1e06ae54e3ea66bed55bc3a23c5_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i85dadb45dbca427d8e191a42bd6e0362_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i69c02ae8ae05465b897dfe7cdb266a03_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="iaf866fd9fa454958a0036bbabf90e523_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i8e37211c0c4b48f982ad4e9643354d04_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="iab6e26c5b0f340338348ca405db9fb95_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i1c5429c00bb14287a4bb94d6108421c2_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ie1fbccff1aea4c8da9b6cb50ca51eeac_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i6d824d73aa7e49458fc9373c5041a28b_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i259386de712c488798757db6bca005f6_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i780dcb580dfa4e33a3bdd6ba483b264c_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i053034f666454dd2956594408e980a4d_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i1690557ce4f748f3a1b9d24a828920a8_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ief0cd084ff48481bb183128fc8b0a29e_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i4e731934991740debc2320257987316a_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="iec8833e3146342e8ac00f246ff0adc39_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i4326094b88484535b6b9f79eed32bbbd_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ie562faad3ef249c3be0fa8a9e9941105_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ia1877b6af59c47589866331e1b367639_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i767ce4177cea472f8579a4ac1bf8bf22_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i104b36705f9d4c138a041e2f18992ba3_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ida853509a10449d9bd79b64dc4326020_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="id76669367031440da08e50f9a977a2d7_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i0a1402b0326f4ffc89d385a9693abd6a_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i1e354c65cf8846d3acf6f4b9dfabddd5_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i50b1bd9bd57e4e228bf2f249bc166e1d_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="id828183dbaca4130b2009c8f434f9e0f_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="if27c526183e04e6090348fa09e1106ae_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="iec7837b626a34eeaada8a44967c35f28_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i5a3e9e59c2a84df18223cef3f36b7e50_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ie83f87b6b256473e81e89c757b288731_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="if02c712ee515448e87e792a3afd2c54c_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i965f92ab2ac64908b108e7c04d0ea47c_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ic19c7abb186e4eaab4ad61a8e72e5fe1_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="if2bfe35af20d4d028be853c6e6bdc086_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i686491bf635349279f21c933e7fe74c7_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1bc49c158b0747c18dcfe1f9041fb356_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i3ceaa67aa6ea47ec973e01d1bd88ad13_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i4044cbd022b14fecb80bfcf25422e4ad_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ibcef9bc5e13941b3a325ea4e4486b854_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i23bced28663f49f3804b4d5945f98092_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i9e70569af23f4ba8bf41266cfbab78c1_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="id3a8163dccc3416185a53ac56c65cdca_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if1b0c72ee51e46fbab1d92714f9c542f_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i521f09bc48cf486cb6eb2736f067283d_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i33e0f7af13f14583b232870cd546c3fb_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="icc1a05a0e9354748b323fe0f6846d8f2_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia131ca738e984652b86ffbb394cacda8_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i85e0712031d54bdc8213bf85e85ae3fb_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia2b8530619f744d685669567a1c29172_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ibfb5a41f5e7c4b468d22de9185286436_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="iba77a59c7574449c86eb6a1b373dd8df_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="if7a56f9597e14de49ce7503da9b77144_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="id551a222ede140ab83ebb039c86faa85_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i1d3ca382a4104ac7be85255475d9873c_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="icd1e5f5ef3ef465b85901687c26b9844_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib99117acc23e4987b2de8556961728ac_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i4a87bef5e3a14b2ba89ddf725d0aa7cf_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia34c55501368461182943efd11ea9118_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ForeignGovernmentDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia994c2bd2c7649d89287fff418bfc6e6_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib9200b718af347ba892012b08ec1bff1_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="icacafb1579ac485ea7b0681ef08b7750_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib3a17f4775ad4f8d85d3b090303e575b_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i83339abb0f9844e18f282ef98c231d6a_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ic6578669c3834af2aef0fa378fae3bd1_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i158957454d7e4fa7bb36e8bf38adf396_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ie72b804d6e804b35b693c6294402bcfc_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i6b0ceaaf78c14680bfc6388dd82c2793_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i268eeadd47ac4ec0a97aa29402e787d5_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">gwre:ConvertibleSeniorNotes1.250Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ibdb90adf0cc64905be0db306d1112349_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">gwre:ConvertibleSeniorNotes1.250Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i326b6ff709b3413f8d31049690b35019_D20210818-20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-18</startDate>
            <endDate>2021-08-18</endDate>
        </period>
    </context>
    <context id="id73b6a1141c04e619bcdb34b55dca3b9_I20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-18</instant>
        </period>
    </context>
    <context id="ib616004b71ea46c59636bf54c65605e2_I20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-18</instant>
        </period>
    </context>
    <context id="i36caae5e7f3042d0b1f37b4a4d71c0c4_I20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-18</instant>
        </period>
    </context>
    <context id="i4882973f879e4c84a951754f04186bd1_I20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-18</instant>
        </period>
    </context>
    <context id="i49755b7c80414520864ceed0a432cd48_D20210818-20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-18</startDate>
            <endDate>2021-08-18</endDate>
        </period>
    </context>
    <context id="i64b63e80f6cf47e499a3ba21fba6d6a0_I20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-18</instant>
        </period>
    </context>
    <context id="ia4d172c4d4744f69a57f614b30905ee3_D20210818-20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-18</startDate>
            <endDate>2021-08-18</endDate>
        </period>
    </context>
    <context id="i9fcf9d1c9e604861956ae179a8bf4099_I20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-18</instant>
        </period>
    </context>
    <context id="i43ee9d6ecefe42a3a05343aa17852f06_D20210818-20210818">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">gwre:HazardHubIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-18</startDate>
            <endDate>2021-08-18</endDate>
        </period>
    </context>
    <context id="i81eb2865bcbf45ada7c48e6912ed7928_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:AcquiredTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i44a1b46fa6c14d919970ee89d5f9e128_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:AcquiredTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i986157b4cb884b289bfe15fd07401439_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:AcquiredTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i532420a9a30540cabb83192e37078557_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:CustomerRelationshipsandCustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i19a0cd6fc05d434babc7cd1301f7335a_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:CustomerRelationshipsandCustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i66bd3e1ecc3b4e149860a4d9989bc125_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:CustomerRelationshipsandCustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ib07c1ad2c4d74b69a41c5f3b93c64952_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:PartnerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ia78e980616a943639677cd122e770764_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:PartnerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i3a5af96ca14d4508b386def177b5f992_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">gwre:PartnerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i4a3b36d69474465ea902ae939f3233d6_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ib332028cbaf04091bdada11be6c1ec91_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i6a1385684d4d41af8c787f69eaf75c03_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i27d9171d1833494f9f2ec58587d26f84_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i437ddb73e66b4c49854dc5d6b842ef0e_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i6731a291cd89482ab121c33f819ed25a_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i59860a02dd194c988fe862c611986d68_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ib52210ce4513418aaec00e933ddf7e27_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4e3422257fcd4e56b32d15d3f54f404a_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i69721685529a4525a5eb48f8cb40deca_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="id4db6f6d227b44dc8fe288a990f0f87b_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i976416d7c697480db3447544cb1f905a_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i632fe932cb4d49f59450925d24542142_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i27a3e4dfd79a45c493a97593f8b0ccb6_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="ifb2f7d8a1ce84d0f9517fc7265088c36_I20180331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-03-31</instant>
        </period>
    </context>
    <context id="ia89b213ad47a40669837099e343d27e0_D20180301-20180331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-03-01</startDate>
            <endDate>2018-03-31</endDate>
        </period>
    </context>
    <context id="i5313e5a3b7e74e20b9375595a9ee15dc_D20180301-20180331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-03-01</startDate>
            <endDate>2018-03-31</endDate>
        </period>
    </context>
    <context id="iedfad112363246259da42c2ae5a609d7_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-03-01</startDate>
            <endDate>2018-03-31</endDate>
        </period>
    </context>
    <context id="i6923bc8c1f2d491fa8595d3ee0036ee8_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i052d56b46d5f4896bdde43ba3098c268_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="iaa381b506cc44f71abbfaf0fa49f9ec2_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i3c884d82e5bd4e828b902e94707f0138_I20180331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2018-03-31</instant>
        </period>
    </context>
    <context id="ibd0b14e96bf54976a2a649ab9957b2c0_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostOfMaintenanceRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iefffe4419a004e76ad53140fc2500d0d_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostOfMaintenanceRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i18f5168c83324d25bf67a7e47bbf99e2_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostOfMaintenanceRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i1b305aae93b54a3f9a2b696108cae0fc_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostofLicenseRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i2203306d2b564383911ad8c3ee4cc4f4_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostofLicenseRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i75ef07dbc58644fba1b132883643dfee_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostofLicenseRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i46fb735e2d754f90ba38143d5e46a219_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostOfServicesRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="idf94e5bc7b89484c8025704b9aa57770_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostOfServicesRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i43fdb9c29c1041319e03b7dd5fddf8ad_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gwre:CostOfServicesRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="id6bbb3fa6c3948bda2530a9e52dd1b66_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="iba50f9e0cec84e6b97aa015cf95d61bd_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i8aa2d8da8a634099820ba68a6e9f0b41_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i4989a76621c1471d92162c8f0e15b638_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i56ab866e151749e1bdb7dc20db89ec09_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i3f8e4453f2944697b8b9a700fbe81a0c_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i6e2588ef4f664a748f0882add054771e_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i0ed5e495066a478e981d826f729a28f9_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="i518c402416b441209f1e771066a35734_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i064c54564fd74307b82df81b28daac6e_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="idb0406a4835c4ea49b35f567b248c737_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i7e87e05ee20249eca11721321c479f86_I20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i5de89f6de7bd44f9b98873d0ec4f1431_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-31</instant>
        </period>
    </context>
    <context id="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="iba29b7a5b089488b9bc76bd562958759_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i150192bda8bd4bbbb461fe73ea8945f2_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i66693ebec0264e52831274bb7b737ff2_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i6b104583141d44a09787dd7ca0df9381_I20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="if6891ef2582f4c619c82813c863de726_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ib4e165cd76d940218270db44c2248ea7_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i57db18f542884957b145e820a7fb6f58_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i0ef6dc796d0b4d1c84f4b3ee30072763_D20180801-20190731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2019-07-31</endDate>
        </period>
    </context>
    <context id="i91309a2bbc97465792cf432a2e1c4f44_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</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="i4d011335cada420cb202ea68f702a553_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="id8ec2bb1c23e4811a1e94cec7f6b5f4b_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ic2407decfe2d409588ccb75089de5db8_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gwre:TotalShareholderReturnPerformanceSharesTSRPSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i34e9c6fa1f2842bcacdccfc392048dfc_I20201215">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gwre:StockPlanTwoThousandTwentyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-15</instant>
        </period>
    </context>
    <context id="iab0e00a0d5f94d459daf90c263906728_I20201031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
        </entity>
        <period>
            <instant>2020-10-31</instant>
        </period>
    </context>
    <context id="i4c6a523cee86456bbbf7686f7c64b79b_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="ie220610b07fd4a8db05ba19e87899fb4_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ied6e3a66369c409596bef635348314e5_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="idd6daf7f47d343ada0977d8df80475c9_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i97b5d523cb7441aca5246508418badbe_D20200801-20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-01</startDate>
            <endDate>2021-07-31</endDate>
        </period>
    </context>
    <context id="ie40931541bea4ac19843c9004519bd74_D20190801-20200731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-08-01</startDate>
            <endDate>2020-07-31</endDate>
        </period>
    </context>
    <context id="i8013ab5a802b408cb6b027bd6976f84c_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i347f18ecb569455fb1114ae171e924f2_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">stpr:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i2e3a7bc30aa742a68afcb36d62c776c9_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="id673e3463a6a4658845c896e2aa99167_D20210801-20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">stpr:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2022-07-31</endDate>
        </period>
    </context>
    <context id="i8a6936dc1c4c4d80bf7be1a605ac4505_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="idcec4b04c7c74db1a6b982596ac7d007_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="ia6ba9a31456b4a8bbe367ddf96fe327d_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i683bb4e7018e4b1a9b0b00f96f373feb_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i36688a960e964864b83ee19439f5856b_I20220731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-31</instant>
        </period>
    </context>
    <context id="i73fb14a7f1004ab0b9c659e1112c2ce5_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">gwre:APACMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i468450806ef647a4843e7cf7cc3bfd6d_I20220926">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001528396</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-26</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="day">
        <measure>gwre:day</measure>
    </unit>
    <unit id="usdPerUnit">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>gwre:Unit</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="segment">
        <measure>gwre:segment</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV80L2ZyYWc6MjE5ZWJhZmIxMjc5NDI2ZWI5YjEzNzBhNjg5MDY0NmUvdGFibGU6ZDczNDllZTc4OWQzNDhhM2FjYWUzYjhmNDk0MzAwOGYvdGFibGVyYW5nZTpkNzM0OWVlNzg5ZDM0OGEzYWNhZTNiOGY0OTQzMDA4Zl80LTEtMS0xLTk1NjQy_b5a13b35-a0e9-44a0-b946-12829153710d">0001528396</dei:EntityCentralIndexKey>
    <dei:DocumentFiscalYearFocus
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV80L2ZyYWc6MjE5ZWJhZmIxMjc5NDI2ZWI5YjEzNzBhNjg5MDY0NmUvdGFibGU6ZDczNDllZTc4OWQzNDhhM2FjYWUzYjhmNDk0MzAwOGYvdGFibGVyYW5nZTpkNzM0OWVlNzg5ZDM0OGEzYWNhZTNiOGY0OTQzMDA4Zl85LTEtMS0xLTk1NjQy_47ce2192-c0e5-44c8-b4a6-b928da5b3554">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV80L2ZyYWc6MjE5ZWJhZmIxMjc5NDI2ZWI5YjEzNzBhNjg5MDY0NmUvdGFibGU6ZDczNDllZTc4OWQzNDhhM2FjYWUzYjhmNDk0MzAwOGYvdGFibGVyYW5nZTpkNzM0OWVlNzg5ZDM0OGEzYWNhZTNiOGY0OTQzMDA4Zl8xMC0xLTEtMS05NTY0Mg_4a4153fe-2387-4681-8581-005f910de9f2">FY</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV80L2ZyYWc6MjE5ZWJhZmIxMjc5NDI2ZWI5YjEzNzBhNjg5MDY0NmUvdGFibGU6ZDczNDllZTc4OWQzNDhhM2FjYWUzYjhmNDk0MzAwOGYvdGFibGVyYW5nZTpkNzM0OWVlNzg5ZDM0OGEzYWNhZTNiOGY0OTQzMDA4Zl8xMS0xLTEtMS05NTY0Mg_7a660090-2b00-418c-8e51-c299b0d18257">false</dei:AmendmentFlag>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="if795368b515449f4b52349f1a7bd4733_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNzI4Mg_44c6ccb7-3b39-4abf-83e9-ed8ccb3ecd50">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMC0xLTEtOTU2NDI_70a76482-bdb9-4243-b5d1-f03895c9a9b7">http://fasb.org/us-gaap/2021-01-31#OtherLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMC0xLTEtOTU2NDI_b09edf4a-605b-458f-9b89-191a6172e88f">http://fasb.org/us-gaap/2021-01-31#OtherLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzQtMC0xLTEtOTU2NDI_c8b60104-0b57-4a9d-8fc9-7039178214d6">http://fasb.org/us-gaap/2021-01-31#OtherLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <dei:DocumentType
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjUw_66f3c08f-7945-4f42-b98c-15ea8484db02">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjUx_d00b5ad9-ca94-4f44-adb9-54b729585ab4">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N18yOTY_b10fd18f-ac7b-4020-9749-a74a153d797b">2022-07-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N18yOTY_b2849858-8730-4d54-920f-56978f6b5b9b">--07-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQ2_fe7e36db-f2f2-4978-8174-2e7568b60ed4">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQz_367dffea-7ad6-4384-aa05-bbd4af26300f">001-35394</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjUy_1057d0f4-8bf6-414d-b48d-2b9d7fb70776">Guidewire Software, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6MmJhMTkzYWVmNWU2NGQ0MDg1ZGVmOTlmODgwZTA0YjMvdGFibGVyYW5nZToyYmExOTNhZWY1ZTY0ZDQwODVkZWY5OWY4ODBlMDRiM18wLTAtMS0xLTk1NjQy_0d291f95-bdcb-4d51-87ea-fcb7644fb9cc">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6MmJhMTkzYWVmNWU2NGQ0MDg1ZGVmOTlmODgwZTA0YjMvdGFibGVyYW5nZToyYmExOTNhZWY1ZTY0ZDQwODVkZWY5OWY4ODBlMDRiM18wLTItMS0xLTk1NjQy_aeaccd42-446b-4fc9-9e80-83175f09f0b1">36-4468504</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQ3_14cb5e91-8d72-435c-97bb-3e598659bf4b">2850 S. Delaware St., Suite 400,</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjU1_ad313652-bd56-4cb3-823c-faf9a7374289">San Mateo</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQ0_12b42748-5f83-46d4-a452-b9be13d6d247">CA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjUz_65da2cba-3b80-4db7-828f-d2bbfa7e6a50">94403</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjU2_3ca454fd-4088-4e09-8bb0-741e0af575cf">650</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjU3_3e81f429-589f-48d9-831f-1900a3ab91df">357-9100</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6MjFkYTk1NmVhNWNkNDcxMDgwM2Q4OGNhMzZhYWRjN2YvdGFibGVyYW5nZToyMWRhOTU2ZWE1Y2Q0NzEwODAzZDg4Y2EzNmFhZGM3Zl8xLTAtMS0xLTk1NjQy_072986ac-5ff7-4539-819a-8e8f0825ae15">Common Stock, $0.0001 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6MjFkYTk1NmVhNWNkNDcxMDgwM2Q4OGNhMzZhYWRjN2YvdGFibGVyYW5nZToyMWRhOTU2ZWE1Y2Q0NzEwODAzZDg4Y2EzNmFhZGM3Zl8xLTItMS0xLTk1NjQy_fc133244-5d62-4c46-9519-aa723e4157fc">GWRE</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6MjFkYTk1NmVhNWNkNDcxMDgwM2Q4OGNhMzZhYWRjN2YvdGFibGVyYW5nZToyMWRhOTU2ZWE1Y2Q0NzEwODAzZDg4Y2EzNmFhZGM3Zl8xLTQtMS0xLTk1NjQy_1d78fc14-4ff7-4bf4-89b2-30bb1a09167d">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjU4_5999c155-0171-475c-aa74-729b9b33d1f1">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjU0_da68d2ff-ff09-440d-8072-479346829a03">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjU5_071ba843-549b-4f1b-b885-9dab2100deb8">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQ4_8fd1c4d9-3453-4fa3-87ba-c611c923d775">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6N2UwMDQ2YzRjNjhiNDlmZGE1Yjg1OTM2ZGU4ZmY3YjMvdGFibGVyYW5nZTo3ZTAwNDZjNGM2OGI0OWZkYTViODU5MzZkZThmZjdiM18wLTAtMS0xLTk1NjQy_953ca7d1-7d51-4aba-8441-4362b0a2664f">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6N2UwMDQ2YzRjNjhiNDlmZGE1Yjg1OTM2ZGU4ZmY3YjMvdGFibGVyYW5nZTo3ZTAwNDZjNGM2OGI0OWZkYTViODU5MzZkZThmZjdiM18xLTYtMS0xLTk1NjQy_ab91efde-5536-4217-9923-b09100690537">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGFibGU6N2UwMDQ2YzRjNjhiNDlmZGE1Yjg1OTM2ZGU4ZmY3YjMvdGFibGVyYW5nZTo3ZTAwNDZjNGM2OGI0OWZkYTViODU5MzZkZThmZjdiM18yLTYtMS0xLTk1NjQy_2e99ec39-e25b-4e86-989a-a2e218e57492">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjYw_45c26597-cf10-4858-a6bb-d32497c451cc">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQ5_a8b6fee9-1717-4411-8fa9-490309752a99">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="i1860d686c2a54d5aaf6c90b53aaa9d15_I20220131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N18zNDU0_af417e41-4b8c-45af-a418-a57bdf2e7453"
      unitRef="usd">5400000000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i03e64652f4bf4f9f93d1e388bd34b014_I20220831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N18zODIz_f4026fd2-ee31-4ea4-8b9e-d1d17d7ec892"
      unitRef="shares">84084360</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xL2ZyYWc6MWJkYjM0NDY5Mjc4NDM1Yzk0MTU3YzExYjEzOWJhNzcvdGV4dHJlZ2lvbjoxYmRiMzQ0NjkyNzg0MzVjOTQxNTdjMTFiMTM5YmE3N180MjQ1_316961da-1485-48bb-992e-063d87a840f4">Portions of the registrant&#x2019;s definitive Proxy Statement relating to its 2022 Annual Meeting of Stockholders are incorporated by reference into Part III of this report where indicated. Such Proxy Statement will be filed with the U.S. Securities and Exchange Commission within 120 days after the end of the fiscal year to which this report relates.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <us-gaap:ContractWithCustomerAssetAllowanceForCreditLossWriteoff
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xOS9mcmFnOmM4NzFkNjQ0YWVkNDQ2M2FhNGRkMDAwOTJhMTZiYjU4L3RleHRyZWdpb246Yzg3MWQ2NDRhZWQ0NDYzYWE0ZGQwMDA5MmExNmJiNThfMjE5OTAyMzkzNDUxMQ_c0840ee8-9e11-4f21-94a6-58e9e25e4721"
      unitRef="usd">3000000</us-gaap:ContractWithCustomerAssetAllowanceForCreditLossWriteoff>
    <dei:AuditorFirmId
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83MC9mcmFnOmFlMjRmMTQ4NTBmZjQ5OWQ4MGVmYWQzN2IzZTg5NmI1L3RhYmxlOjBlNjQ3M2YwNjNiNzRmMmE4ZTA2ODg1MTRhNjI2YjZmL3RhYmxlcmFuZ2U6MGU2NDczZjA2M2I3NGYyYThlMDY4ODUxNGE2MjZiNmZfMC0wLTEtMS0xMTY2NDQvdGV4dHJlZ2lvbjphMDg4ZjBlMjU5ZGI0Njk1YTAzOTRhZDUwNjFhYmM0OF8xMDk5NTExNjI3ODEyNQ_9e4d1555-945b-4613-bb9d-86470ed505d5">185</dei:AuditorFirmId>
    <dei:AuditorName
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83My9mcmFnOjc0ODA1Yzc5NzNkNDQ0YTk5OGQ2NDg0N2U0MzU0ZTU5L3RleHRyZWdpb246NzQ4MDVjNzk3M2Q0NDRhOTk4ZDY0ODQ3ZTQzNTRlNTlfMTA5OTUxMTYyODc4ODY_f9b729f6-44b3-4527-96c3-cb90d16d7051">KPMG LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83My9mcmFnOjc0ODA1Yzc5NzNkNDQ0YTk5OGQ2NDg0N2U0MzU0ZTU5L3RleHRyZWdpb246NzQ4MDVjNzk3M2Q0NDRhOTk4ZDY0ODQ3ZTQzNTRlNTlfMTA5OTUxMTYyODc4ODc_10ef0756-cf8a-4bcb-8000-5133384f152d">Santa Clara, California</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMy0xLTEtMS05NTY0Mg_ac804071-04f3-451a-b8e6-267cc8337a18"
      unitRef="usd">606303000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMy0zLTEtMS05NTY0Mg_ff7b2870-2b61-4d9c-aa5b-937778c5bb35"
      unitRef="usd">384910000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ShortTermInvestments
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNS0xLTEtMS05NTY0Mg_62a3ab5c-ec7b-4b7e-b36e-6205d7d8f062"
      unitRef="usd">369865000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNS0zLTEtMS05NTY0Mg_bf0b8010-495a-4fae-a412-d51ea7a650cd"
      unitRef="usd">734517000</us-gaap:ShortTermInvestments>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNi0wLTEtMS05NTY0Mi90ZXh0cmVnaW9uOjdmOGNiMWQ5NWY4ZDQyOTliMGNjZWU0ZDFiMTNhZWZmXzQ3_2f27bbf2-389d-4b76-91f6-8de3eda237ff"
      unitRef="usd">359000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNi0wLTEtMS05NTY0Mi90ZXh0cmVnaW9uOjdmOGNiMWQ5NWY4ZDQyOTliMGNjZWU0ZDFiMTNhZWZmXzU1_5afd76da-a2ae-4c5d-94ec-5d2c61cfb6bd"
      unitRef="usd">1057000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNi0xLTEtMS05NTY0Mg_793860bc-3471-423f-899d-02edb0a41586"
      unitRef="usd">143797000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNi0zLTEtMS05NTY0Mg_62937d8d-f5fc-414c-820d-ea92425b74d1"
      unitRef="usd">104068000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNy0xLTEtMS05NTY0Mg_f8b75610-3bfa-42f4-977e-ecb05e18c442"
      unitRef="usd">71515000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNy0zLTEtMS05NTY0Mg_5bd4ead0-ea30-4ff9-a0ce-ab77f6a49244"
      unitRef="usd">79061000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfOS0xLTEtMS05NTY0Mg_638063f5-0615-4d06-92ca-e0489789366d"
      unitRef="usd">61223000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfOS0zLTEtMS05NTY0Mg_9a78cf02-b9c9-4301-a5f7-767b4825391c"
      unitRef="usd">52729000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTAtMS0xLTEtOTU2NDI_7be65050-c1a7-433b-9211-babc7e3b7b22"
      unitRef="usd">1252703000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTAtMy0xLTEtOTU2NDI_42641449-8e1b-4207-8de7-d5fad8729765"
      unitRef="usd">1355285000</us-gaap:AssetsCurrent>
    <us-gaap:LongTermInvestments
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTEtMS0xLTEtOTU2NDI_923e605b-58ca-46a8-83fa-a1d49a4f2eed"
      unitRef="usd">187507000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTEtMy0xLTEtOTU2NDI_0ebf2239-a4d9-41b8-8b02-9fa8604d0207"
      unitRef="usd">227164000</us-gaap:LongTermInvestments>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTItMS0xLTEtOTU2NDI_a3bd4a83-e64f-451f-a618-0f8ac30dc68a"
      unitRef="usd">13914000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTItMy0xLTEtOTU2NDI_8316a326-3074-4ada-879f-3064b67c7ddb"
      unitRef="usd">24361000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTMtMS0xLTEtOTU2NDI_3a62ee2b-09fe-4c70-974d-331f74887cca"
      unitRef="usd">80740000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTMtMy0xLTEtOTU2NDI_734a3c31-836d-4722-956f-06563869c318"
      unitRef="usd">80061000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTQtMS0xLTEtOTU2NDI_59ad1842-3a1c-41ad-b215-8668fb099db0"
      unitRef="usd">90287000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTQtMy0xLTEtOTU2NDI_ede2e85c-fbb8-47e3-ab00-1a910bc5e68e"
      unitRef="usd">97447000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTUtMS0xLTEtOTU2NDI_53347563-9968-426f-a2fb-f42ffbec6b56"
      unitRef="usd">21361000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTUtMy0xLTEtOTU2NDI_51cb1394-6436-4a8b-9d3d-851b0b897bcb"
      unitRef="usd">19743000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTYtMS0xLTEtOTU2NDI_0a7f7166-a2d7-4b82-a79c-b86080ddabd2"
      unitRef="usd">372192000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTYtMy0xLTEtOTU2NDI_d91187a7-0e0d-4802-a863-0b903d7071f6"
      unitRef="usd">340877000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTctMS0xLTEtOTU2NDI_af4ad87a-b3b6-45da-9723-86b019924e3c"
      unitRef="usd">191461000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTctMy0xLTEtOTU2NDI_105631b8-78e8-4180-b881-c8989370edf8"
      unitRef="usd">138428000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTgtMS0xLTEtOTU2NDI_09386f00-efe1-4372-97aa-ab09664fce64"
      unitRef="usd">56732000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTgtMy0xLTEtOTU2NDI_2b921a74-e32b-4dd2-9c3e-d1b0f40a2366"
      unitRef="usd">38479000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTktMS0xLTEtOTU2NDI_2a723716-822b-4fd3-b6a4-eb961fa91d23"
      unitRef="usd">2266897000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMTktMy0xLTEtOTU2NDI_744e19f9-a274-42a4-9bc8-87b306f354e1"
      unitRef="usd">2321845000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjItMS0xLTEtOTU2NDI_33173bca-195d-4fdc-8f04-1f583890fa44"
      unitRef="usd">40440000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjItMy0xLTEtOTU2NDI_5a45749e-cabd-45ee-be91-7b90b3a5b5b4"
      unitRef="usd">27830000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjMtMS0xLTEtOTU2NDI_d9b481cf-f278-485a-8394-3df1197b9723"
      unitRef="usd">90962000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjMtMy0xLTEtOTU2NDI_13972a7a-a1ec-4764-b32b-01692c276e30"
      unitRef="usd">102137000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjQtMS0xLTEtOTU2NDI_10dcdd4a-aeb0-462a-aa21-cd4a5c08aa33"
      unitRef="usd">170776000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjQtMy0xLTEtOTU2NDI_8f7cb8df-8489-46c6-bb00-8de243e59051"
      unitRef="usd">138699000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjUtMS0xLTEtOTU2NDI_42fdbdac-8c5a-468e-bc28-a109bd197caa"
      unitRef="usd">35340000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjUtMy0xLTEtOTU2NDI_a909968b-5dd9-4fd5-a907-0f9b9b50ee85"
      unitRef="usd">31648000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjYtMS0xLTEtOTU2NDI_f3aaa32e-7cdd-4afa-a495-0411d14c02ac"
      unitRef="usd">337518000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjYtMy0xLTEtOTU2NDI_14bd83cf-a5f5-4da1-800b-4f9dc1ec80cc"
      unitRef="usd">300314000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjctMS0xLTEtOTU2NDI_66e172a4-ae00-4a0e-b8e6-3b21b9678e79"
      unitRef="usd">105123000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjctMy0xLTEtOTU2NDI_b7c1909a-7483-48db-9bb9-1096c5c55f35"
      unitRef="usd">115374000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:SeniorNotes
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjgtMS0xLTEtOTU2NDI_3f5a2db2-c4ce-4636-85cd-c032e8ce0232"
      unitRef="usd">358216000</us-gaap:SeniorNotes>
    <us-gaap:SeniorNotes
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjgtMy0xLTEtOTU2NDI_b88df252-a358-4c42-b1de-e518a8218dcc"
      unitRef="usd">343825000</us-gaap:SeniorNotes>
    <us-gaap:DeferredRevenueNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjktMS0xLTEtOTU2NDI_3469d716-a9ab-492a-bf54-5aff981132d0"
      unitRef="usd">7500000</us-gaap:DeferredRevenueNoncurrent>
    <us-gaap:DeferredRevenueNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMjktMy0xLTEtOTU2NDI_7bea6003-e184-4855-8c3a-2761efe59f42"
      unitRef="usd">7237000</us-gaap:DeferredRevenueNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzAtMS0xLTEtOTU2NDI_fa1a107d-38a5-4bf6-9f5c-eb1700e1d754"
      unitRef="usd">6883000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzAtMy0xLTEtOTU2NDI_aa779edb-e10a-4bb0-8de2-ca9b6a2f10d1"
      unitRef="usd">10201000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzEtMS0xLTEtOTU2NDI_ffd12800-9625-44f1-80a8-ff75205d7036"
      unitRef="usd">815240000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzEtMy0xLTEtOTU2NDI_213ca925-5507-4b2d-a899-be79cea9f460"
      unitRef="usd">776951000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzItMS0xLTEtOTU2NDI_e3b3809d-3955-4d16-9890-ca131cd3608b"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzItMy0xLTEtOTU2NDI_d67da352-1db7-423f-8c99-4bb63e79331b"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl8yOA_96711d39-bc05-4c33-bd3b-41c8b4b0681f"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl8yOA_ac007013-30f1-47c5-bec8-e8d9345a4732"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl80MQ_335347a0-de95-47d4-aa9e-086f5a08ad5d"
      unitRef="shares">500000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl80MQ_86e7861f-2e63-4b60-b82a-f03c429894f1"
      unitRef="shares">500000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl83OQ_57a516e7-fb54-467d-908f-ab46b7b713fe"
      unitRef="shares">84084209</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl83OQ_df70e883-c43b-4214-a68c-e501a646ab39"
      unitRef="shares">84084209</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl84Ng_52ef1c6b-b3ee-4d1d-96f1-dbd5532e89bd"
      unitRef="shares">83194157</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMC0xLTEtOTU2NDIvdGV4dHJlZ2lvbjo3YTEwNmQxYjdjMmU0ZDY5YWViYzgyMWE5NTY0NDFkZl84Ng_99351de1-6e28-4c67-8272-58195b3ded20"
      unitRef="shares">83194157</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMS0xLTEtOTU2NDI_ac05eec8-12e2-4662-849c-9e71c0dfcb75"
      unitRef="usd">8000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzUtMy0xLTEtOTU2NDI_adda122a-080f-486c-859a-55b387a4b988"
      unitRef="usd">8000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzYtMS0xLTEtOTU2NDI_b04c2625-b263-4f28-ab41-d643764b28c8"
      unitRef="usd">1755476000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzYtMy0xLTEtOTU2NDI_42586680-ac37-46e9-aa3f-d55fcbeb6a0f"
      unitRef="usd">1617204000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzctMS0xLTEtOTU2NDI_54110be2-375e-4980-bc33-f7b20124981b"
      unitRef="usd">-19845000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzctMy0xLTEtOTU2NDI_5c9ad1f0-87aa-4376-bf57-1bddd82078e4"
      unitRef="usd">-6218000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzgtMS0xLTEtOTU2NDI_aef051d3-7fdf-4c0e-8e65-a623b1123212"
      unitRef="usd">-283982000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzgtMy0xLTEtOTU2NDI_b4895556-0e0e-4c48-90e4-172751244099"
      unitRef="usd">-66100000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzktMS0xLTEtOTU2NDI_fcdec52c-79d6-467a-917f-8061c9ef854a"
      unitRef="usd">1451657000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfMzktMy0xLTEtOTU2NDI_4820208b-701c-4722-ac13-b2587214e89e"
      unitRef="usd">1544894000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNDAtMS0xLTEtOTU2NDI_7287fcd5-3eef-49fa-be43-150a29069429"
      unitRef="usd">2266897000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV83Ni9mcmFnOjY1ODMwNTIxYjhhMTQ3MGRhYzdjYzdjY2Y5NDY2MzgyL3RhYmxlOjI2NjA4ZjE1OWRkNDQxMGU5ZmZmMGYyZTA2NjczODBlL3RhYmxlcmFuZ2U6MjY2MDhmMTU5ZGQ0NDEwZTlmZmYwZjJlMDY2NzM4MGVfNDAtMy0xLTEtOTU2NDI_ed401238-77a9-43c6-89d9-8954ec0d0ebf"
      unitRef="usd">2321845000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic41cab7815da4fecbc7503a51b657371_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMy0xLTEtMS05NTY0Mg_0b51833f-323b-48f3-88d7-d6a575f158f6"
      unitRef="usd">343708000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i46144352023644c7bef44662217ca0b1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMy0zLTEtMS05NTY0Mg_0f24ae6a-2b95-43b0-8ca3-123794b946f0"
      unitRef="usd">252358000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7b7834783fb642c4868f4c9d80caedbb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMy01LTEtMS05NTY0Mg_afcf1d9a-a93f-41c9-94fa-5517f1f213fd"
      unitRef="usd">203473000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ica6488de9ffa49dc95c1cd529dce7fa5_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNC0xLTEtMS05NTY0Mg_54806cbc-772c-413c-bb53-82987b76ceb0"
      unitRef="usd">258631000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaf63f09bdab243779942deb891570dd4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNC0zLTEtMS05NTY0Mg_4f8d71ab-2fad-4718-b7d6-d44aa14d84e8"
      unitRef="usd">303792000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6b37bf3bc9a54fdeb32d4acbeb1a550e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNC01LTEtMS05NTY0Mg_3c40ea52-e5f7-4dc3-b348-1472e90d747e"
      unitRef="usd">331554000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i32974e5d7d944b538914d4f6be8b5b0e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNS0xLTEtMS05NTY0Mg_e1e16cf9-ee8b-4aff-8a14-07bc11f4fe24"
      unitRef="usd">210275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6929d8b010564fe78e0d072352211ab5_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNS0zLTEtMS05NTY0Mg_0add9f3c-da3e-4a02-bc48-414006e44d08"
      unitRef="usd">187117000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if4509243db0d471a9c3d916e035fc2b9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNS01LTEtMS05NTY0Mg_9f1cc072-a484-407a-8745-3b4c65389092"
      unitRef="usd">207280000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNi0xLTEtMS05NTY0Mg_4e403466-478f-46df-9793-007722337f4d"
      unitRef="usd">812614000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNi0zLTEtMS05NTY0Mg_e1a15147-6809-4013-ae84-9e059087c418"
      unitRef="usd">743267000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfNi01LTEtMS05NTY0Mg_c63214c1-311e-4682-9027-9e1903490bf5"
      unitRef="usd">742307000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ic41cab7815da4fecbc7503a51b657371_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfOC0xLTEtMS05NTY0Mg_6ac83b5c-44e2-4208-b8cf-4ed424bf04cc"
      unitRef="usd">213275000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i46144352023644c7bef44662217ca0b1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfOC0zLTEtMS05NTY0Mg_eec29d30-a019-44cf-8834-508d51df0813"
      unitRef="usd">164983000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i7b7834783fb642c4868f4c9d80caedbb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfOC01LTEtMS05NTY0Mg_0d46b205-2e10-4554-86a8-6bc1e08608e0"
      unitRef="usd">117158000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ica6488de9ffa49dc95c1cd529dce7fa5_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfOS0xLTEtMS05NTY0Mg_cd094291-4a64-4af9-a271-e62f60e0befa"
      unitRef="usd">8754000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="iaf63f09bdab243779942deb891570dd4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfOS0zLTEtMS05NTY0Mg_ee37e2c3-42db-4121-b53a-8c66164df069"
      unitRef="usd">10569000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i6b37bf3bc9a54fdeb32d4acbeb1a550e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfOS01LTEtMS05NTY0Mg_38db7fc6-4842-44cf-a430-a6b1fb87b2b0"
      unitRef="usd">11566000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i32974e5d7d944b538914d4f6be8b5b0e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTAtMS0xLTEtOTU2NDI_4f816e3e-27b1-46c3-9896-aaff350fc0a3"
      unitRef="usd">238365000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i6929d8b010564fe78e0d072352211ab5_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTAtMy0xLTEtOTU2NDI_33904302-c525-4452-9c5f-b4a61c20e500"
      unitRef="usd">199502000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="if4509243db0d471a9c3d916e035fc2b9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTAtNS0xLTEtOTU2NDI_d7f5bc4b-2525-43cf-ae95-6ea83baf82e4"
      unitRef="usd">209291000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTEtMS0xLTEtOTU2NDI_cae2d2aa-d6f8-433c-8a3c-b46f33024d64"
      unitRef="usd">460394000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTEtMy0xLTEtOTU2NDI_16af12c1-c2b8-444f-911e-0787fcd009d5"
      unitRef="usd">375054000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTEtNS0xLTEtOTU2NDI_32f9d881-08bf-4744-beab-9372a6149f39"
      unitRef="usd">338015000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="ic41cab7815da4fecbc7503a51b657371_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTMtMS0xLTEtOTU2NDI_1afd5526-4495-4bbb-804f-8828671ebfb6"
      unitRef="usd">130433000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i46144352023644c7bef44662217ca0b1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTMtMy0xLTEtOTU2NDI_94fa2426-ccb0-4616-aa3a-190d5c7cd963"
      unitRef="usd">87375000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i7b7834783fb642c4868f4c9d80caedbb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTMtNS0xLTEtOTU2NDI_2bf7d8f9-4e70-46cf-a49b-ed2d27a47721"
      unitRef="usd">86315000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ica6488de9ffa49dc95c1cd529dce7fa5_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTQtMS0xLTEtOTU2NDI_31ae8b40-a7db-4bb7-996d-80a8d7584e99"
      unitRef="usd">249877000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="iaf63f09bdab243779942deb891570dd4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTQtMy0xLTEtOTU2NDI_474c5084-7c9b-4f2f-8b8e-7b81697f637b"
      unitRef="usd">293223000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i6b37bf3bc9a54fdeb32d4acbeb1a550e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTQtNS0xLTEtOTU2NDI_99f2ca57-cf14-404d-b2c5-d31624719956"
      unitRef="usd">319988000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i32974e5d7d944b538914d4f6be8b5b0e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTUtMS0xLTEtOTU2NDI_53a18c1f-2059-4c4e-b9c1-b0ec10c7595e"
      unitRef="usd">-28090000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i6929d8b010564fe78e0d072352211ab5_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTUtMy0xLTEtOTU2NDI_f7065c2b-a0a1-4d13-b480-1151824b1159"
      unitRef="usd">-12385000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="if4509243db0d471a9c3d916e035fc2b9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTUtNS0xLTEtOTU2NDI_2c4c816e-4f11-41ee-9e33-bbfdd288e57e"
      unitRef="usd">-2011000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTYtMS0xLTEtOTU2NDI_dcb46657-9481-4998-b670-a43f96bf4a89"
      unitRef="usd">352220000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTYtMy0xLTEtOTU2NDI_68c895bc-e034-44c9-a0bb-8c20b1ef1784"
      unitRef="usd">368213000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTYtNS0xLTEtOTU2NDI_0ed3fc49-2469-46f3-8f7a-a672863b0175"
      unitRef="usd">404292000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTgtMS0xLTEtOTU2NDI_cf1a0628-055d-4b99-9591-246b9219cb49"
      unitRef="usd">249665000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTgtMy0xLTEtOTU2NDI_471a1da5-933d-4871-9db5-3d31bfd00ede"
      unitRef="usd">219494000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTgtNS0xLTEtOTU2NDI_87cef2ee-f2fc-41c7-b598-65d8546c7196"
      unitRef="usd">200575000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTktMS0xLTEtOTU2NDI_0606a4f9-aa90-4d83-aca5-df789e262b1e"
      unitRef="usd">194611000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTktMy0xLTEtOTU2NDI_5788e2c7-7bce-4778-b8bd-060340c1808a"
      unitRef="usd">160544000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMTktNS0xLTEtOTU2NDI_b7f80572-5391-4208-a8ae-8053718881c5"
      unitRef="usd">142420000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjAtMS0xLTEtOTU2NDI_f8701a64-5e63-4f08-8a35-9a1849bc612b"
      unitRef="usd">107391000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjAtMy0xLTEtOTU2NDI_9ff76929-9c04-430d-818e-87e5528e84d7"
      unitRef="usd">93759000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjAtNS0xLTEtOTU2NDI_4dc1ba1e-dff8-445d-a99b-7820acef5107"
      unitRef="usd">85183000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjEtMS0xLTEtOTU2NDI_6c89fca5-4e13-4b38-b141-627fc1f49b2e"
      unitRef="usd">551667000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjEtMy0xLTEtOTU2NDI_53e1c2d4-33ec-4f20-9304-14a7ebda75cb"
      unitRef="usd">473797000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjEtNS0xLTEtOTU2NDI_5aa30032-ea30-4275-8e6b-57e85f363f6c"
      unitRef="usd">428178000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjItMS0xLTEtOTU2NDI_d7221f4b-0797-40e5-a3a9-b9b722a9be6c"
      unitRef="usd">-199447000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjItMy0xLTEtOTU2NDI_318ec237-c5c9-4c55-9269-1a22f2693874"
      unitRef="usd">-105584000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjItNS0xLTEtOTU2NDI_d5fe4543-796b-475b-b9c1-0b7fb51f01ba"
      unitRef="usd">-23886000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjMtMS0xLTEtOTU2NDI_44e34ce5-d802-40e1-b098-416d83f9218a"
      unitRef="usd">6277000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjMtMy0xLTEtOTU2NDI_85b4cf33-ea7c-4b41-85e2-7bbf6ea4b7d2"
      unitRef="usd">7395000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjMtNS0xLTEtOTU2NDI_2351aa3b-c655-47aa-9061-ab3e2b03d62c"
      unitRef="usd">24705000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjQtMS0xLTEtOTU2NDI_d2aabc7d-332a-4379-9075-06f72af2e60a"
      unitRef="usd">19446000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjQtMy0xLTEtOTU2NDI_cf8a4fba-031a-4e0e-9ba0-aa002a9e9a4e"
      unitRef="usd">18711000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjQtNS0xLTEtOTU2NDI_d2c513a4-017e-4f10-bb13-2391f9d1a520"
      unitRef="usd">17945000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjUtMS0xLTEtOTU2NDI_55326bed-8cd7-4294-bf36-a212444f09f7"
      unitRef="usd">-17099000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjUtMy0xLTEtOTU2NDI_88abf49f-bac2-4a0b-8d39-c33dfecb090e"
      unitRef="usd">12619000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjUtNS0xLTEtOTU2NDI_5a6f7501-1b7d-42e0-87f7-af94ccd39028"
      unitRef="usd">-7205000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjYtMS0xLTEtOTU2NDI_3d943bd2-c8c1-4cd9-a33c-ca68e0229eda"
      unitRef="usd">-229715000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjYtMy0xLTEtOTU2NDI_a94ddc3c-2ca0-41fc-988d-a8f839392e77"
      unitRef="usd">-104281000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjYtNS0xLTEtOTU2NDI_f3f71641-2976-402f-bf37-951f4eb1b4c5"
      unitRef="usd">-24331000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjctMS0xLTEtOTU2NDI_0c28bb03-a651-48b5-8e47-d74127b79be4"
      unitRef="usd">-49284000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjctMy0xLTEtOTU2NDI_5ccc8ad6-9ee2-4028-ab53-c8481ce9ba8e"
      unitRef="usd">-37774000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjctNS0xLTEtOTU2NDI_bfd61b87-da75-4b23-af0a-e1ed577356fe"
      unitRef="usd">2867000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjgtMS0xLTEtOTU2NDI_2dff448c-ec00-40ab-93d9-61e637308f2b"
      unitRef="usd">-180431000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjgtMy0xLTEtOTU2NDI_93b50a2d-6905-4220-9bd1-ed77ca40b638"
      unitRef="usd">-66507000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMjgtNS0xLTEtOTU2NDI_62a82004-60cd-4744-99bc-78535ae3ed8d"
      unitRef="usd">-27198000</us-gaap:ProfitLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzAtMS0xLTEtOTU2NDI_7653b891-1976-42aa-a707-87c27894c0b7"
      unitRef="usdPerShare">-2.16</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzAtMS0xLTEtOTU2NDI_badaeb06-6765-4391-8aab-e3706b5727f0"
      unitRef="usdPerShare">-2.16</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzAtMy0xLTEtOTU2NDI_4f520b89-b707-489f-8264-69251bf85d34"
      unitRef="usdPerShare">-0.79</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzAtMy0xLTEtOTU2NDI_ec944f35-b16d-42b4-99b1-b2af0b2e5615"
      unitRef="usdPerShare">-0.79</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzAtNS0xLTEtOTU2NDI_82d42892-c251-4b63-a583-a5693d757a52"
      unitRef="usdPerShare">-0.33</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzAtNS0xLTEtOTU2NDI_cde3fdd8-10dd-4c84-9e0a-4a9be824cb0f"
      unitRef="usdPerShare">-0.33</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzMtMS0xLTEtOTU2NDI_10d210dd-7673-4470-9210-57c8e4f5188e"
      unitRef="shares">83569517</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzMtMS0xLTEtOTU2NDI_f10ae6e0-e29c-465f-9ebe-11da9f7cc1b7"
      unitRef="shares">83569517</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzMtMy0xLTEtOTU2NDI_2b9dbfdf-f86c-43a4-9dbf-875266056917"
      unitRef="shares">83577375</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzMtMy0xLTEtOTU2NDI_5d1deafb-f340-4750-a85b-575408a94d5f"
      unitRef="shares">83577375</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzMtNS0xLTEtOTU2NDI_3858eb44-a17e-414a-9f66-b22dcdd79460"
      unitRef="shares">82855392</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84Mi9mcmFnOmRkZmJlNzVkMTVjZDQxMmY4MjVkZDFmMzVjNTJhNzQ3L3RhYmxlOjkxMGVkMDM0MTdhZTRhOGNiYmYzNGVkYzQ3NjUyN2UzL3RhYmxlcmFuZ2U6OTEwZWQwMzQxN2FlNGE4Y2JiZjM0ZWRjNDc2NTI3ZTNfMzMtNS0xLTEtOTU2NDI_ff827c06-3a92-4695-9a38-af0377431e93"
      unitRef="shares">82855392</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ProfitLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfMi0xLTEtMS05NTY0Mg_853e8bf7-f244-4feb-8a1f-023699f526b4"
      unitRef="usd">-180431000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfMi0zLTEtMS05NTY0Mg_59e76b05-aeef-4a33-b2c1-fb23a55adb5b"
      unitRef="usd">-66507000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfMi01LTEtMS05NTY0Mg_494ecb1a-acd5-4f28-98ce-0dbe6e326307"
      unitRef="usd">-27198000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNC0xLTEtMS05NTY0Mg_944515f5-0fa3-4f68-96d8-6571e81e6e27"
      unitRef="usd">-7201000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNC0zLTEtMS05NTY0Mg_4e7d7911-2dc4-4bec-a9a2-6e84a64f03f2"
      unitRef="usd">1779000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNC01LTEtMS05NTY0Mg_3370fe74-3fc7-4a40-ae8b-3b31b65da38f"
      unitRef="usd">518000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNS0xLTEtMS05NTY0Mg_d6a9c9ef-b0de-401d-9853-2975bdaee95b"
      unitRef="usd">-8342000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNS0zLTEtMS05NTY0Mg_50a83ba6-839c-446d-b5fb-b899ecf210f2"
      unitRef="usd">-4746000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNS01LTEtMS05NTY0Mg_00840a02-e229-4419-a757-b8321ff53e7f"
      unitRef="usd">2138000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNi0xLTEtMS05NTY0Mg_d6e65ccf-8d9d-483e-9371-04c8826a0b8c"
      unitRef="usd">-2009000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNi0zLTEtMS05NTY0Mg_8c9fcc2c-6b80-419e-be9b-c8b55625cc1e"
      unitRef="usd">-872000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNi01LTEtMS05NTY0Mg_deb1a871-3f5b-4564-ac2a-c8e5d2d2c3d2"
      unitRef="usd">669000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNy0xLTEtMS05NTY0Mg_f204978e-59c1-4a8a-8de9-df2d5f591c4a"
      unitRef="usd">93000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNy0zLTEtMS05NTY0Mg_1126255b-43f6-49d8-baf7-259f52d0d08b"
      unitRef="usd">-1123000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfNy01LTEtMS05NTY0Mg_46e555eb-b765-43e7-a62b-32a26efc0e9a"
      unitRef="usd">-632000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfOC0xLTEtMS05NTY0Mg_ebd80589-fe40-43c9-8a83-3a9706f2165e"
      unitRef="usd">-13627000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfOC0zLTEtMS05NTY0Mg_6bc8a676-02cd-4180-be6c-c139090d8e37"
      unitRef="usd">-972000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfOC01LTEtMS05NTY0Mg_760a8db7-8d47-45f0-8a1a-7cab7ba03dae"
      unitRef="usd">2619000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfOS0xLTEtMS05NTY0Mg_dd83f110-eaac-4a7d-b7a0-352f5975e40d"
      unitRef="usd">-194058000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfOS0zLTEtMS05NTY0Mg_5e4c7029-8327-42ce-9c91-43c09b5bf28a"
      unitRef="usd">-67479000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84NS9mcmFnOjliYzY0MWY5MThiNTRmMGU4ZjNiNGMxNDQ4OGVlMzkyL3RhYmxlOjE2ZjEwOGM5ZTdjNjQ4MzZiODUxZjZhNzg3MjcxNGIyL3RhYmxlcmFuZ2U6MTZmMTA4YzllN2M2NDgzNmI4NTFmNmE3ODcyNzE0YjJfOS01LTEtMS05NTY0Mg_e71f4a1a-569c-427d-98f4-ed17a0dc2593"
      unitRef="usd">-24579000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="i0dcf770270284b5b91327c2a8025017f_I20190731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDQtMi0xLTEtOTU2NDI_f3d3328b-3fd1-4ab1-9fb5-1c66104a2bf3"
      unitRef="shares">82140883</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i0dcf770270284b5b91327c2a8025017f_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDQtNC0xLTEtOTU2NDI_7eb1e03a-2747-4926-bfa2-8fac69583c26"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ieca6b5ba1c374b9bbfa9ea5dcb48afb1_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDQtNi0xLTEtOTU2NDI_75447e90-3d66-413b-87ef-ff29db6cbdea"
      unitRef="usd">1391904000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib1568476e7814437922dee0677209c05_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDQtOC0xLTEtOTU2NDI_5ef48a61-8855-47d0-80b9-d7eb8fe259df"
      unitRef="usd">-7758000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4d421e709f9f4ef2b1383369ff8b5187_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDQtMTAtMS0xLTk1NjQy_2435b760-90a3-4334-af9e-46999ca57970"
      unitRef="usd">190047000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDQtMTItMS0xLTk1NjQy_b0889718-e6c4-4876-ac7d-5f022d12be78"
      unitRef="usd">1574201000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="if556ffde9aed4a7183293e6604461d43_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDUtMTAtMS0xLTk3MzMw_cb17752d-e6f0-4ef0-9f47-fce1f373a695"
      unitRef="usd">-27198000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDUtMTItMS0xLTk1NjQy_34008498-3a0b-45e6-83c4-26c593ff1f59"
      unitRef="usd">-27198000</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i2f3463a518a64121924674bd99de8599_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDYtMi0xLTEtOTcyNDI_60f9019c-f728-453a-8cde-f166bdd1b9dc"
      unitRef="shares">132573</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i7549c7d4ff1f432ba7519eeb62858ace_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDYtNi0xLTEtOTcyOTQ_5a9abf4a-11c9-4217-8ca9-f12b9dc65b68"
      unitRef="usd">4955000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDYtMTItMS0xLTk1NjQy_31f830c6-a940-449e-a885-14d7153862ae"
      unitRef="usd">4955000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="i2f3463a518a64121924674bd99de8599_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDctMi0xLTEtOTcyNDI_2ad01531-0528-439f-a243-f5a3ad095360"
      unitRef="shares">1188469</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i7549c7d4ff1f432ba7519eeb62858ace_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDgtNi0xLTEtOTcyOTQ_984ade7e-f92b-4911-8467-1bee870a4902"
      unitRef="usd">102191000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDgtMTItMS0xLTk1NjQy_45f4ead3-4647-453c-bf35-c939e2ab710f"
      unitRef="usd">102191000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ibfc2855e37324ee8bd32fa71356d5f77_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDktOC0xLTEtOTczMTg_92545d8d-6c94-4a4a-bdf0-1cbd88bde97c"
      unitRef="usd">518000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNDktMTItMS0xLTk1NjQy_96e143c7-b7a0-4030-ad10-9e26ce1411f6"
      unitRef="usd">518000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="ibfc2855e37324ee8bd32fa71356d5f77_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTAtOC0xLTEtOTczMTg_2574c238-a383-4a83-9555-d845c3a9a9d8"
      unitRef="usd">1469000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTAtMTItMS0xLTk1NjQy_d2cf6e55-72e1-4ce9-a2bd-631da98ac315"
      unitRef="usd">1469000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="ibfc2855e37324ee8bd32fa71356d5f77_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTEtOC0xLTEtOTczMTg_f78bb358-335b-47c3-9cce-1f45ba1080f4"
      unitRef="usd">-632000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTEtMTItMS0xLTk1NjQy_33b6b17d-b2f4-4e67-b6f4-c36721c24689"
      unitRef="usd">-632000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i9c448ab72c874db1b1e113be39f2505f_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTItOC0xLTEtOTczMjQ_373ff997-ab2d-4838-9e13-f1994e23af53"
      unitRef="usd">-107000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6e1fbd4810704555a69ac7147b63036d_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTItMTAtMS0xLTk3MzQy_6b5f1252-f940-4758-952f-90faec1aa932"
      unitRef="usd">107000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="icc0bfb7f39cb4b9997c938359303273d_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTItMTItMS0xLTk1NjQy_881a47f2-2606-4a08-aaf6-33bc7053bba0"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="i4d995895787d4a8d82c5fb1fe1486050_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTMtMi0xLTEtOTU2NDI_65017d52-654c-4e48-84e1-b47f10c8fe66"
      unitRef="shares">83461925</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i4d995895787d4a8d82c5fb1fe1486050_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTMtNC0xLTEtOTU2NDI_27425b49-8fa4-4c98-8556-964d85f7b933"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idbe395d0f47641cc92b1cad75fd0c710_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTMtNi0xLTEtOTU2NDI_f78c3abd-0689-44ec-8dc5-32ea56bd1f4a"
      unitRef="usd">1499050000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia48ac9a28dad4f9db99d2bad8707abe4_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTMtOC0xLTEtOTU2NDI_2fc58ac7-c0de-4874-87db-23e01f257f05"
      unitRef="usd">-5246000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6a2888c633f7452889383c2073819d36_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTMtMTAtMS0xLTk1NjQy_728497d8-3c58-490e-9cae-9f4e51656fe4"
      unitRef="usd">162956000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTMtMTItMS0xLTk1NjQy_051b30e7-9283-4bb2-856f-6511b71dbcea"
      unitRef="usd">1656768000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="if3ed481d3e854fc6908596f23d335a31_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTQtMTAtMS0xLTk1NjQy_fc252cf7-cac9-45ef-81ea-82fb65059763"
      unitRef="usd">-66507000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTQtMTItMS0xLTk1NjQy_24e8e9f9-31fb-475a-834c-c0f589f8db79"
      unitRef="usd">-66507000</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="if5e94883b0cb4516b4387bf3b76eb05d_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTUtMi0xLTEtOTcxNTg_10118363-0384-4585-9b62-38c6f7889e89"
      unitRef="shares">53932</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ie1c43e0857394913969c2f35ffea35d1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTUtNi0xLTEtOTcxNzE_95de427a-98c2-4672-bcb1-001f69b25fed"
      unitRef="usd">1932000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTUtMTItMS0xLTk1NjQy_da345d4a-6d01-492b-9661-f1940fedb436"
      unitRef="usd">1932000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="if5e94883b0cb4516b4387bf3b76eb05d_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTYtMi0xLTEtOTcxNTg_8cbc26f2-4eb2-4e0b-a2b3-8a4eaa065342"
      unitRef="shares">1167291</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ie1c43e0857394913969c2f35ffea35d1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTctNi0xLTEtOTcxNzE_a2010ae9-f209-4b7a-b3e3-9523122381b5"
      unitRef="usd">116222000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTctMTItMS0xLTk1NjQy_c79c195d-918d-42a7-b711-0802df3fe917"
      unitRef="usd">116222000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="if5e94883b0cb4516b4387bf3b76eb05d_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTgtMi0xLTEtOTcxNTg_e41a948d-3419-4d10-bddd-992ec82ee1c1"
      unitRef="shares">1488991</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="if3ed481d3e854fc6908596f23d335a31_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTgtMTAtMS0xLTk3MTgz_aa5fad7d-91f5-4e4a-bb64-a867748057e4"
      unitRef="usd">162549000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTgtMTItMS0xLTk1NjQy_b212cb1e-4489-4084-b95f-e18417aac839"
      unitRef="usd">162549000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i36ffb2778cd44b9fa19659ee628122c2_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTktOC0xLTEtOTcxNzc_c2ef6cbd-7eae-409b-8728-628aecdb773b"
      unitRef="usd">1779000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNTktMTItMS0xLTk1NjQy_9bdf9d27-c81b-4eb1-8e96-6f2a2c2b2428"
      unitRef="usd">1779000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="i36ffb2778cd44b9fa19659ee628122c2_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjAtOC0xLTEtOTcxNzc_38a71ebb-1ccb-4459-995f-ef7eb0afe31a"
      unitRef="usd">-3874000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjAtMTItMS0xLTk1NjQy_e1f32677-7088-40af-abc0-8e011b7e9fa6"
      unitRef="usd">-3874000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="i36ffb2778cd44b9fa19659ee628122c2_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjEtOC0xLTEtOTcxNzc_18c62089-bf45-48f1-8c3c-1ec41832c1e3"
      unitRef="usd">-1123000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjEtMTItMS0xLTk1NjQy_e126fb0e-e2a1-4632-aa9c-a730e3840220"
      unitRef="usd">-1123000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="ibe72a1ed1fd3414a8b0628cc817abaf5_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjItMi0xLTEtOTU2NDI_d52daa1c-f4d7-4f26-84b0-0ca8ce2f6183"
      unitRef="shares">83194157</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ibe72a1ed1fd3414a8b0628cc817abaf5_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjItNC0xLTEtOTU2NDI_bb1776b4-17ef-41e2-aafb-9dda8db3b21a"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie766fc043f1e4110af9b80e468c1ec02_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjItNi0xLTEtOTU2NDI_88c88b16-337d-4c1c-b7e2-192756e10f71"
      unitRef="usd">1617204000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2550876010154261b3deaacc50ade084_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjItOC0xLTEtOTU2NDI_a028e873-321b-42f4-b29c-1d4ea32a6240"
      unitRef="usd">-6218000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8a3b15ba842b48a59133a2f0b9349739_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjItMTAtMS0xLTk1NjQy_95fcd0e4-c700-4154-9349-2348fdd9a7c8"
      unitRef="usd">-66100000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjItMTItMS0xLTk1NjQy_efe86302-0e00-4de2-92f2-a1e315d3866f"
      unitRef="usd">1544894000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="ied8f13e258824b4aa803ce6f466aee32_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjMtMTAtMS0xLTk4NjA1_64976004-b0e0-4897-bf37-c7967770807f"
      unitRef="usd">-180431000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjMtMTItMS0xLTk4NjA1_77d7d667-02d1-4e7b-a6c9-53f15ad3ff01"
      unitRef="usd">-180431000</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i7d082b3ed16845c3b4056edf3b413c98_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjQtMi0xLTEtOTg2MDU_f1cdde08-fe48-4ff4-9e78-a774213d9cf1"
      unitRef="shares">10472</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="idde3dabf9d0743709cddb95627e7d759_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjQtNi0xLTEtOTg2MDU_d6a6f894-ea8b-474d-8351-778585fe1c2c"
      unitRef="usd">116000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjQtMTItMS0xLTk4NjA1_a1d8a86e-a18b-4baf-a35e-3f75613161cc"
      unitRef="usd">116000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="i7d082b3ed16845c3b4056edf3b413c98_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjUtMi0xLTEtOTg2MDU_12baf8d1-9cb6-448a-a653-31b1ceae400e"
      unitRef="shares">1202125</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="idde3dabf9d0743709cddb95627e7d759_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjYtNi0xLTEtOTg2MDU_a9f6d370-8d9e-4eaa-91e8-32a4ee359504"
      unitRef="usd">138156000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjYtMTItMS0xLTk4NjA1_4e16c92b-1e4b-49fc-bab5-1159dcb88b77"
      unitRef="usd">138156000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="i7d082b3ed16845c3b4056edf3b413c98_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjctMi0xLTEtOTg2MDU_928c3e2e-4d10-4961-8b37-33b88f331d45"
      unitRef="shares">322545</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="ied8f13e258824b4aa803ce6f466aee32_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjctMTAtMS0xLTk4NjA1_0e83cf0d-84d6-4523-8381-a7520334fe08"
      unitRef="usd">37451000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjctMTItMS0xLTk4NjA1_616a6a8c-9677-4f8b-936f-f3fbd45e0d48"
      unitRef="usd">37451000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i4af62753fb974aa2892de2477dfe407e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjgtOC0xLTEtOTg2MDU_aeb09857-22b5-4a77-86e6-f0d8a58aa5f9"
      unitRef="usd">-7201000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjgtMTItMS0xLTk4NjA1_dc13104e-98f5-42fd-8def-858266792f2e"
      unitRef="usd">-7201000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="i4af62753fb974aa2892de2477dfe407e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjktOC0xLTEtOTg2MDU_681cab6b-842a-4eaa-80cf-0e1d4662b7c5"
      unitRef="usd">-6333000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNjktMTItMS0xLTk4NjA1_5c750649-6c9b-4b9b-b404-16f2f820543b"
      unitRef="usd">-6333000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="i4af62753fb974aa2892de2477dfe407e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzAtOC0xLTEtOTg2MDU_8aa700e2-6bfd-46c8-9fc8-5b126f28caf8"
      unitRef="usd">93000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzAtMTItMS0xLTk4NjA1_912e0f4b-3a44-4b34-a7f5-d786755f28d1"
      unitRef="usd">93000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="id68de20a11504e7c90f15453a37d7348_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzEtMi0xLTEtMTAwNTQy_1bca7e61-e18d-417a-bdf7-7b000fd3db08"
      unitRef="shares">84084209</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="id68de20a11504e7c90f15453a37d7348_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzEtMy0xLTEtMTE1NTg2_6e43a05e-90d5-4e95-af09-bf7b41067d31"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ifd3db0de78ae4d638ef23cdbf44f6187_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzEtNS0xLTEtMTE1NTg2_f18ad954-6389-4f88-b361-13e10bc01dc8"
      unitRef="usd">1755476000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie7d3e92d8fa946f3a16c577215f9103d_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzEtNy0xLTEtMTE1NTg2_2a460f3c-72e9-4fe8-81d4-0f0e47762f0a"
      unitRef="usd">-19845000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9183bb4be0db4576870631f5926bd1a8_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzEtOS0xLTEtMTE1NTg2_7b88868f-694e-41d9-8a6f-143bce0a007c"
      unitRef="usd">-283982000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV84OC9mcmFnOmNmOTdjM2RhNDEyODQ3MmVhZTg5YWMyMWM5YjdiYmM1L3RhYmxlOmE1NmMxMTI3ZDAyYTQyYzdhZTJlZmRkM2NmODZiZDQwL3RhYmxlcmFuZ2U6YTU2YzExMjdkMDJhNDJjN2FlMmVmZGQzY2Y4NmJkNDBfNzEtMTEtMS0xLTExNTU4Ng_546f02dd-bb55-42b2-956a-648993b0f031"
      unitRef="usd">1451657000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMy0xLTEtMS05NTY0Mg_c5be4718-7611-4ae6-b5bc-b3b02b3607e2"
      unitRef="usd">-180431000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMy0zLTEtMS05NTY0Mg_9d69c6a8-786d-4e8e-8b50-41b071460199"
      unitRef="usd">-66507000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMy01LTEtMS05NTY0Mg_eebdb79f-4a52-4612-90e7-48ed0e4d0174"
      unitRef="usd">-27198000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNS0xLTEtMS05NTY0Mg_7095c95d-9db0-4ead-87f0-ff77174ecdf5"
      unitRef="usd">33540000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNS0zLTEtMS05NTY0Mg_64c43ff5-5785-45f0-816d-18472747eb87"
      unitRef="usd">36955000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNS01LTEtMS05NTY0Mg_8e3f18ac-ac79-4dff-ad92-fe222d1aacb9"
      unitRef="usd">42641000</us-gaap:DepreciationAndAmortization>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNi0xLTEtMS05NTY0Mg_991f01b1-f8df-4496-a7a0-40b708a9bb16"
      unitRef="usd">14391000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNi0zLTEtMS05NTY0Mg_703a9425-9156-4cbc-9525-ef92bc3b4356"
      unitRef="usd">13617000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNi01LTEtMS05NTY0Mg_51653e66-0a47-4da9-a8d7-1084be8a29d1"
      unitRef="usd">12886000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNy0xLTEtMS05NTY0Mg_cd9be034-8710-4cd6-bf5e-4a317e0fd1f2"
      unitRef="usd">14456000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNy0zLTEtMS05NTY0Mg_bce690ca-4c03-4e94-82eb-60f967763c39"
      unitRef="usd">11442000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNy01LTEtMS05NTY0Mg_c3a6ec4d-89a5-4f05-9adf-1f9379d22902"
      unitRef="usd">9892000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:ShareBasedCompensation
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfOC0xLTEtMS05NTY0Mg_b3b45457-2ffc-49bb-88bb-6324fed47871"
      unitRef="usd">137011000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfOC0zLTEtMS05NTY0Mg_6207230a-4521-4565-98ea-2a120ffc7f2b"
      unitRef="usd">115009000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfOC01LTEtMS05NTY0Mg_0b48e798-1fc4-4ccf-803b-667e1fe4f7ca"
      unitRef="usd">101817000</us-gaap:ShareBasedCompensation>
    <gwre:AccountsReceivableCreditLossExpenseReversalAndRevenueReserves
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTAtMS0xLTEtOTU2NDI_9f5d8350-b6d1-409b-a57c-af3459fb1fcc"
      unitRef="usd">2597000</gwre:AccountsReceivableCreditLossExpenseReversalAndRevenueReserves>
    <gwre:AccountsReceivableCreditLossExpenseReversalAndRevenueReserves
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTAtMy0xLTEtOTU2NDI_386d49b7-5bec-4fea-9af7-008184091227"
      unitRef="usd">226000</gwre:AccountsReceivableCreditLossExpenseReversalAndRevenueReserves>
    <gwre:AccountsReceivableCreditLossExpenseReversalAndRevenueReserves
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTAtNS0xLTEtOTU2NDI_5234cd7f-330d-4ed1-8fd7-0b87920aa38a"
      unitRef="usd">367000</gwre:AccountsReceivableCreditLossExpenseReversalAndRevenueReserves>
    <gwre:ChangeInDeferredTaxAssets
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTEtMS0xLTEtOTU2NDI_cc497478-ca37-41ab-9acd-02d2b284a657"
      unitRef="usd">-54115000</gwre:ChangeInDeferredTaxAssets>
    <gwre:ChangeInDeferredTaxAssets
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTEtMy0xLTEtOTU2NDI_df192cc4-6427-4df1-87e7-57ca35ee2e8e"
      unitRef="usd">-35789000</gwre:ChangeInDeferredTaxAssets>
    <gwre:ChangeInDeferredTaxAssets
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTEtNS0xLTEtOTU2NDI_1e89ebc9-e9aa-4f7e-bd73-c0012962a248"
      unitRef="usd">-11859000</gwre:ChangeInDeferredTaxAssets>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTItMS0xLTEtOTU2NDI_bc15ae12-3ae5-4ec1-9530-1c632adf90c7"
      unitRef="usd">-5498000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTItMy0xLTEtOTU2NDI_f07d278d-5414-44f3-b301-d5f04b6a9917"
      unitRef="usd">-6567000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTItNS0xLTEtOTU2NDI_2c942f89-8142-4f42-b9a0-750739a229d4"
      unitRef="usd">1882000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTMtMS0xLTEtOTU2NDI_f1d63e0d-f956-453b-ac88-ebd98c09d53e"
      unitRef="usd">1545000</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTMtMy0xLTEtOTU2NDI_a311723b-0cda-430e-a547-0157880fa1aa"
      unitRef="usd">0</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTMtNS0xLTEtOTU2NDI_eea539e3-9863-41e8-9560-6b15105e6a63"
      unitRef="usd">-10672000</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTQtMS0xLTEtOTU2NDI_8951810c-9b65-46ce-8e45-c4bc4a9fbfb1"
      unitRef="usd">-63000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTQtMy0xLTEtOTU2NDI_c4304ed5-5dda-4a5f-8a69-b9c96197b975"
      unitRef="usd">-863000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTQtNS0xLTEtOTU2NDI_9f6a34e8-eef1-456b-9065-6982d55da1a9"
      unitRef="usd">-739000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTYtMS0xLTEtOTU2NDI_3d823f51-d461-4c2a-b81c-b12c542f116b"
      unitRef="usd">42545000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTYtMy0xLTEtOTU2NDI_4f962cbd-95cd-4245-bf70-833091dd628f"
      unitRef="usd">-10820000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTYtNS0xLTEtOTU2NDI_8c996005-ffa7-4a56-8b3e-ff24940f2002"
      unitRef="usd">-23878000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTctMS0xLTEtOTU2NDI_adc36581-b840-4716-b470-d79a49afd656"
      unitRef="usd">-18106000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTctMy0xLTEtOTU2NDI_ead38c75-d270-42ec-a5ba-4efc2810d38e"
      unitRef="usd">19194000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTctNS0xLTEtOTU2NDI_b4b8e221-578d-406e-b860-2bfd7081c620"
      unitRef="usd">38125000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTgtMS0xLTEtOTU2NDI_833126ac-9afe-4898-8ef8-598aeab12b79"
      unitRef="usd">23390000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTgtMy0xLTEtOTU2NDI_94a024c1-efd4-4c16-9ecd-07f310169daa"
      unitRef="usd">16764000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTgtNS0xLTEtOTU2NDI_fff5ada6-8486-40fc-b3c3-cb7341e6ade1"
      unitRef="usd">18564000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <gwre:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTktMS0xLTEtOTU2NDI_02ba78ef-1a59-4839-b897-e94e8cf3f6e4"
      unitRef="usd">-7160000</gwre:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <gwre:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTktMy0xLTEtOTU2NDI_6efe476a-2a2c-43a1-8a4f-77259093f5f6"
      unitRef="usd">-6350000</gwre:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <gwre:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMTktNS0xLTEtOTU2NDI_2e6cc021-0a9f-4ee6-a3f9-097a5ad3de3f"
      unitRef="usd">10784000</gwre:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <us-gaap:IncreaseDecreaseInAccountsPayableTrade
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjAtMS0xLTEtOTU2NDI_7f3b04be-c117-4e57-9243-6093a83c8bba"
      unitRef="usd">13580000</us-gaap:IncreaseDecreaseInAccountsPayableTrade>
    <us-gaap:IncreaseDecreaseInAccountsPayableTrade
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjAtMy0xLTEtOTU2NDI_fb7e98c8-ad65-4b0a-a73a-fa46d959950a"
      unitRef="usd">3627000</us-gaap:IncreaseDecreaseInAccountsPayableTrade>
    <us-gaap:IncreaseDecreaseInAccountsPayableTrade
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjAtNS0xLTEtOTU2NDI_271d39ba-2344-4531-9f7f-d2a5826e9b61"
      unitRef="usd">-1209000</us-gaap:IncreaseDecreaseInAccountsPayableTrade>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjEtMS0xLTEtOTU2NDI_c0acd735-2ede-459c-8d9b-670b6b75a482"
      unitRef="usd">-8942000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjEtMy0xLTEtOTU2NDI_56b9e8b2-2129-41fe-8c43-2d3359467234"
      unitRef="usd">41526000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjEtNS0xLTEtOTU2NDI_b3c13be7-0229-452d-91ed-32f7dc2ea12b"
      unitRef="usd">-15624000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjItMS0xLTEtOTU2NDI_132e9c7b-f794-47e7-b12d-85bafa001253"
      unitRef="usd">31564000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjItMy0xLTEtOTU2NDI_268d16c0-95c1-4398-9461-0a1fcceb2c24"
      unitRef="usd">12940000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjItNS0xLTEtOTU2NDI_729829e0-dcf0-4e2a-90df-f043aec6f913"
      unitRef="usd">1165000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjMtMS0xLTEtOTU2NDI_fd6f2b64-cc4f-4aeb-ba06-a6bd0cd81b4b"
      unitRef="usd">-9637000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjMtMy0xLTEtOTU2NDI_708687fd-37d8-4544-8699-5f677aaad97c"
      unitRef="usd">-3346000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjMtNS0xLTEtOTU2NDI_07069d74-d3c7-46c2-a165-53b6b5871fb5"
      unitRef="usd">18678000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjQtMS0xLTEtOTU2NDI_eb0e1f88-a418-407b-9ef0-190fd4683f19"
      unitRef="usd">4699000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjQtMy0xLTEtOTU2NDI_4f3ee9ba-43ab-40d0-bbc3-e0b69790ad98"
      unitRef="usd">-6755000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjQtNS0xLTEtOTU2NDI_fd4c1b21-b0f3-43c1-85c5-cdd522f5ebd3"
      unitRef="usd">15576000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjUtMS0xLTEtOTU2NDI_2bfe1eb0-b8f8-4a7c-910d-24004941b53d"
      unitRef="usd">-37940000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjUtMy0xLTEtOTU2NDI_450e56c1-2edc-4b92-af95-0051e5e223ce"
      unitRef="usd">111587000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjUtNS0xLTEtOTU2NDI_8adf40cf-31a5-44b2-b219-df7afaceb086"
      unitRef="usd">113066000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireAvailableForSaleSecuritiesDebt
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjctMS0xLTEtOTU2NDI_40dd8977-e34d-419c-b6ca-842a49cff906"
      unitRef="usd">519536000</us-gaap:PaymentsToAcquireAvailableForSaleSecuritiesDebt>
    <us-gaap:PaymentsToAcquireAvailableForSaleSecuritiesDebt
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjctMy0xLTEtOTU2NDI_480a23f8-37a6-438f-bb45-6644ccf475db"
      unitRef="usd">1033095000</us-gaap:PaymentsToAcquireAvailableForSaleSecuritiesDebt>
    <us-gaap:PaymentsToAcquireAvailableForSaleSecuritiesDebt
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjctNS0xLTEtOTU2NDI_b892e77f-7b3c-4c47-a751-c1f5156ca679"
      unitRef="usd">1280755000</us-gaap:PaymentsToAcquireAvailableForSaleSecuritiesDebt>
    <us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjgtMS0xLTEtOTU2NDI_350adb8d-df0e-46f7-a2ca-6be1ef445f8f"
      unitRef="usd">74552000</us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt>
    <us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjgtMy0xLTEtOTU2NDI_1ad74521-ac2c-417b-9edf-565ab8a1ce3f"
      unitRef="usd">123234000</us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt>
    <us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjgtNS0xLTEtOTU2NDI_c9f010cd-58bc-4deb-9919-d3da37705012"
      unitRef="usd">134050000</us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjktMS0xLTEtOTU2NDI_1136545d-db46-406e-afad-b6575d1dfc36"
      unitRef="usd">834362000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjktMy0xLTEtOTU2NDI_a33f3a6d-266b-4fe5-97dc-410bb86dbf48"
      unitRef="usd">1005290000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMjktNS0xLTEtOTU2NDI_dbc5f3ec-38ef-4efd-9b2d-a29e8cbe761d"
      unitRef="usd">1168720000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzAtMS0xLTEtOTU2NDI_f1970a72-3527-4831-8d7b-b4a4c9959fa4"
      unitRef="usd">9510000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzAtMy0xLTEtOTU2NDI_4b1bd386-2e7c-443e-b14c-198d7bff4d35"
      unitRef="usd">19008000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzAtNS0xLTEtOTU2NDI_c8b3b8f4-4da2-4360-98cd-1de7552ec923"
      unitRef="usd">21377000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToDevelopSoftware
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzEtMS0xLTEtOTU2NDI_5a8632f8-8f84-4381-bd8d-6e829b7888e5"
      unitRef="usd">12266000</us-gaap:PaymentsToDevelopSoftware>
    <us-gaap:PaymentsToDevelopSoftware
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzEtMy0xLTEtOTU2NDI_680702a3-c9ea-467d-8cfe-7d9fa1b53191"
      unitRef="usd">9846000</us-gaap:PaymentsToDevelopSoftware>
    <us-gaap:PaymentsToDevelopSoftware
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzEtNS0xLTEtOTU2NDI_f8bb4d87-2b5d-40e6-b57d-76ae14bd7ef3"
      unitRef="usd">4283000</us-gaap:PaymentsToDevelopSoftware>
    <us-gaap:PaymentsToAcquireOtherInvestments
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzItMS0xLTEtMTA4NDk1_8a663bbc-b2e4-4e14-896d-b9ac0d30be04"
      unitRef="usd">11560000</us-gaap:PaymentsToAcquireOtherInvestments>
    <us-gaap:PaymentsToAcquireOtherInvestments
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzItMy0xLTEtMTA4NDk1_c8b0edef-c36b-4ced-b4eb-66850c894bb3"
      unitRef="usd">2384000</us-gaap:PaymentsToAcquireOtherInvestments>
    <us-gaap:PaymentsToAcquireOtherInvestments
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzItNS0xLTEtMTA4NDk1_cd289464-915b-4a08-b9d1-4cfe0d766efa"
      unitRef="usd">2156000</us-gaap:PaymentsToAcquireOtherInvestments>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzItMS0xLTEtOTU2NDI_02821f81-d610-4c80-ad20-904d48574021"
      unitRef="usd">43830000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzItMy0xLTEtOTU2NDI_dbe0d008-eb03-49a2-9db6-b2eb83ff7329"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzItNS0xLTEtOTU2NDI_14e60990-72da-4e10-96c0-43a7604ad22d"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzQtMS0xLTEtOTU2NDI_c9dd3468-0087-4147-ba52-446163165d08"
      unitRef="usd">312212000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzQtMy0xLTEtOTU2NDI_8c9adb63-a419-47b2-a1f9-efbc1849d2b1"
      unitRef="usd">64191000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzQtNS0xLTEtOTU2NDI_eb710a39-1174-4b5d-80fb-87300d67daa9"
      unitRef="usd">-5801000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzktMS0xLTEtOTU2NDI_9734c0f1-ab3f-4bc0-a39e-d0f48127ed38"
      unitRef="usd">116000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzktMy0xLTEtOTU2NDI_794183c0-88bb-4111-91e1-78d827ec3585"
      unitRef="usd">1932000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfMzktNS0xLTEtOTU2NDI_60227735-3e77-4cb7-9d8d-77c5b20bfeba"
      unitRef="usd">4955000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDAtMS0xLTEtOTU2NDI_f247469e-3ca8-4500-9c2d-3a62d3254eac"
      unitRef="usd">37451000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDAtMy0xLTEtOTU2NDI_918712f1-ffb3-4ad0-91c6-1c34669075ea"
      unitRef="usd">161319000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDAtNS0xLTEtOTU2NDI_b71e2ed2-1d27-4334-917b-dbaedffbecd1"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDYtMS0xLTEtOTU2NDI_3e4ae07a-c89f-44f8-977f-ad17c83a36a8"
      unitRef="usd">-37335000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDYtMy0xLTEtOTU2NDI_3ef24db6-c518-450c-b8c5-3eb0e5b939b5"
      unitRef="usd">-159387000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDYtNS0xLTEtOTU2NDI_ced12cb9-95dd-43f0-b42f-a00207537ac0"
      unitRef="usd">4955000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDctMS0xLTEtOTU2NDI_767e9edb-0650-4aa1-b57b-a3d002c85c17"
      unitRef="usd">-7161000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDctMy0xLTEtOTU2NDI_dc38931d-0081-4f28-9f4a-e34cf49926f2"
      unitRef="usd">1550000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDctNS0xLTEtOTU2NDI_08a02b94-87ea-415e-9d31-f2776bc74c71"
      unitRef="usd">648000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDgtMS0xLTEtOTU2NDI_2cdcf448-1c97-4c42-ab47-d0bf8413fd66"
      unitRef="usd">229776000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDgtMy0xLTEtOTU2NDI_175e9681-e2db-4b75-a2ad-04b66b1d8f1d"
      unitRef="usd">17941000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDgtNS0xLTEtOTU2NDI_da439531-186d-46af-8609-e85b90439989"
      unitRef="usd">112868000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDktMS0xLTEtOTU2NDI_69d29d52-5aa0-4d16-abc6-12138f036963"
      unitRef="usd">384910000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDktMy0xLTEtOTU2NDI_c7679eac-f10b-4778-bc30-b79de0d58925"
      unitRef="usd">366969000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNDktNS0xLTEtOTU2NDI_43ecc922-bd6c-4538-b42b-b02a89c24da1"
      unitRef="usd">254101000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTAtMS0xLTEtOTU2NDI_c4aadf89-9634-4d3c-81f5-c02142d6417c"
      unitRef="usd">614686000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTAtMy0xLTEtOTU2NDI_07cae331-4f40-457d-b6d5-26943688e057"
      unitRef="usd">384910000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTAtNS0xLTEtOTU2NDI_b57b6b60-3de7-45b4-ae6b-1e599026c9d7"
      unitRef="usd">366969000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTItMS0xLTEtOTU2NDI_d3777d42-7e06-4921-9a04-78eb5bb63997"
      unitRef="usd">5000000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTItMy0xLTEtOTU2NDI_4ce2f325-4023-4156-8a87-ee14d8d44814"
      unitRef="usd">5000000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTItNS0xLTEtOTU2NDI_ad4d97e6-bbe3-4498-a3c2-8c132684f807"
      unitRef="usd">5000000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTMtMS0xLTEtOTU2NDI_9e1a1baf-8810-4501-aa34-e3661044eca1"
      unitRef="usd">4323000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTMtMy0xLTEtOTU2NDI_c678ffd6-bd72-4206-982a-8db98bace378"
      unitRef="usd">4155000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTMtNS0xLTEtOTU2NDI_97f636f9-17f5-49a3-91b4-826375fc1d6d"
      unitRef="usd">4888000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTQtMS0xLTEtOTU2NDI_4adc18ce-1bfb-40ac-a23d-49870e8d9eb2"
      unitRef="usd">1114000</us-gaap:NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1>
    <us-gaap:NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTQtMy0xLTEtOTU2NDI_2d7d672f-1eb2-48ee-a4b6-4cf9b30ce2de"
      unitRef="usd">1676000</us-gaap:NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1>
    <us-gaap:NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTQtNS0xLTEtOTU2NDI_bf5ae140-1fe9-4916-98a5-c94978f2ff5a"
      unitRef="usd">343000</us-gaap:NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTUtMS0xLTEtOTU2NDI_ec44fe3e-de25-4b73-8a90-24c7b541681c"
      unitRef="usd">1250000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTUtMy0xLTEtOTU2NDI_9c4040ce-b447-430b-ad71-57c077731837"
      unitRef="usd">845000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTUtNS0xLTEtOTU2NDI_1d37e2aa-6a35-4222-b7f4-3a79ba274c9c"
      unitRef="usd">406000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <gwre:CommonStockRepurchasedButNotYetPaid
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTYtMS0xLTEtOTU2NDI_5f7609aa-701c-4d0f-a5b0-e30ee43b879f"
      unitRef="usd">0</gwre:CommonStockRepurchasedButNotYetPaid>
    <gwre:CommonStockRepurchasedButNotYetPaid
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTYtMy0xLTEtOTU2NDI_a5947471-4679-458d-9306-9d6119d96fcd"
      unitRef="usd">1230000</gwre:CommonStockRepurchasedButNotYetPaid>
    <gwre:CommonStockRepurchasedButNotYetPaid
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85MS9mcmFnOjMzNjY5ZmYzNzViODQwMGRiZDViMmE3MjdkMzgyZTM1L3RhYmxlOjI4OWU4MDBlY2Q3NzRjNDQ4MDJlZWU4Njc5OTc5YTk3L3RhYmxlcmFuZ2U6Mjg5ZTgwMGVjZDc3NGM0NDgwMmVlZTg2Nzk5NzlhOTdfNTYtNS0xLTEtOTU2NDI_84147117-8451-4479-88ab-037fdf01db75"
      unitRef="usd">0</gwre:CommonStockRepurchasedButNotYetPaid>
    <us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDI0MTY_9b3ba7a3-d77f-42c2-b447-f1056bcf5c03">The Company and Summary of Significant Accounting Policies and Estimates&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Company&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Guidewire Software, Inc., a Delaware corporation, was incorporated on September&#160;20, 2001. Guidewire Software, Inc., together with its subsidiaries (the &#x201c;Company&#x201d;), provides a technology platform which combines core operations, digital engagement, analytics, and artificial intelligence (&#x201c;AI&#x201d;) applications. The Company&#x2019;s technology platform supports core insurance operations, including underwriting, policy administration, claim management, and billing; insights into data that can improve business decision making; and digital sales, service, and claims experiences for policyholders, agents, and other key stakeholders. The Company&#x2019;s customers are primarily property and casualty insurance carriers.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of Presentation and Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (&#x201c;GAAP&#x201d;). The consolidated financial statements and notes include the Company and its wholly-owned subsidiaries and reflect all adjustments (all of which are normal and recurring in nature) that, in the opinion of management, are necessary for a fair presentation of the periods presented. All intercompany balances and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of the accompanying consolidated financial statements in conformity with GAAP requires management to make estimates and assumptions about future events that affect the amounts of assets and liabilities reported, disclosures about contingent assets and liabilities, and reported amounts of revenue and expenses. Significant items subject to such estimates include, but are not limited to, revenue recognition, the useful lives of property and equipment and intangible assets, accounts receivable and unbilled accounts receivable allowances, valuation allowance for deferred tax assets, stock-based compensation, annual bonus attainment, income tax uncertainties, fair value of convertible senior notes and investments, valuation of goodwill and intangible assets, fair value of acquired assets and assumed liabilities, software development costs to be capitalized, leases, and contingencies. These estimates and assumptions are based on management&#x2019;s best estimates and judgment. Management regularly evaluates its estimates and assumptions using historical experience and other factors; however, actual results could differ from these estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Foreign Currency &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The functional currency of the Company&#x2019;s foreign subsidiaries is their respective local currency. The Company translates all assets and liabilities of foreign subsidiaries to U.S. dollars at the current exchange rate as of the applicable balance sheet date. Revenue and expenses are translated at the average exchange rate prevailing during the period in which the transactions occur. The effects of foreign currency translations are recorded in accumulated other comprehensive income (loss) as a separate component of stockholders&#x2019; equity in the accompanying consolidated balance sheets. Transaction gains and losses that arise from exchange rate fluctuations on transactions denominated in a currency other than the functional currency&#160;of the recording entity are included in other income (expense) in the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents are comprised of cash and highly liquid investments with remaining maturities of 90 days or less at the date of purchase. Cash equivalents primarily consist of commercial paper and money market funds.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Investments &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management determines the appropriate classification of investments at the time of purchase based upon management&#x2019;s intent with regard to such investments. All investments in the periods presented have been classified as available-for-sale.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company classifies investments as short-term when they have remaining contractual maturities of one year or less from the balance sheet date, and as long-term when the investments have remaining contractual maturities of more than one year from the balance sheet date. Investments are recorded at fair value with unrealized holding gains and losses, net of taxes, generally included in accumulated other comprehensive income (loss). Unrealized losses related to the credit worthiness of an investment, if any, are recorded in other income (expense), net on the consolidated statements of operations. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Property, Equipment, and Software Development Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost less accumulated depreciation and amortization. Depreciation is calculated on a straight-line basis over the estimated useful lives of the assets. Maintenance and repairs that do not extend the life or improve an asset are expensed in the period incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated useful lives of property and equipment are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&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:10pt;font-weight:400;line-height:100%"&gt;Computer hardware&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&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:10pt;font-weight:400;line-height:100%"&gt;Purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Software development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 to 5 years&lt;/span&gt;&lt;/div&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:10pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 to 5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 years&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:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shorter of 10 years or remaining lease term&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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain development costs related to software delivered to customers (&#x201c;self-managed software&#x201d;) incurred subsequent to the establishment of technological feasibility are subject to capitalization and amortized over the estimated lives of the related products. Technological feasibility is established upon completion of a working model. Costs incurred subsequent to the establishment of technological feasibility have not been material and, therefore, all software development costs related to self-managed software have been charged to research and development expense in the accompanying consolidated statements of operations as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company capitalizes software development costs for technology applications that provide new or significantly enhanced functionality that the Company will offer solely as a cloud-based subscription. Capitalized costs are primarily comprised of compensation for employees who are directly associated with cloud software development projects. The Company begins to capitalize costs when preliminary development efforts are successfully completed, management has authorized and committed project funding, it is probable that the project will be completed, and the software will be used as intended. If any of these criteria cease being met before the software reaches its intended use, any capitalized costs related to the project will be impaired. When the software reaches its intended use which is typically once the technology applications are available for general release, capitalized costs are amortized to cost of revenue over the estimated useful lives of the related assets, generally estimated to be &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNzI4Mg_44c6ccb7-3b39-4abf-83e9-ed8ccb3ecd50"&gt;three&lt;/span&gt; to five years. Costs incurred prior to meeting these capitalization criteria and costs incurred for training and maintenance are recorded as research and development expense in the Company&#x2019;s consolidated statements of operations. Capitalized software development costs are recorded in property and equipment in the Company&#x2019;s consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for leases under Accounting Standards Codification Topic 842: Leases (&#x201c;ASC 842&#x201d;) issued by the Financial Accounting Standards Board. Under ASC 842, the Company determines if an arrangement is a lease at inception of the agreement. If an arrangement is determined to be a lease, an operating lease asset, also known as a right-of-use asset, and lease liability are recorded based on the present value of lease payments over the non-cancellable lease term. In connection with determining the present value of the lease payments, the Company considers only payments that are fixed and determinable at the time of commencement, including non-lease components that are fixed throughout the lease term. Variable components of the lease payments, such as utilities, maintenance, and taxes, are expensed as incurred and not included in determining the present value of the lease liability. As the Company's leases generally do not provide an implicit rate, the Company's incremental borrowing rate, calculated based on available information at the lease commencement date, is used in determining the present value of the lease payments. The Company's incremental borrowing rate is a hypothetical rate based on the Company's understanding of its credit rating. The lease term used to calculate the lease liability and operating lease asset includes options to extend or terminate the lease if it is reasonably certain the Company will exercise that option. Operating lease assets also include any lease payments made prior to commencement and are recorded net of any lease incentives received. Lease expense is recognized on a straight-line basis over the lease term and is reflected in the consolidated statements of operations in each of the cost of revenue and operating expense categories.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also enters into agreements to sublease unoccupied office space. Any sublease payments received in excess of the straight-line rent expense related to the subleased space are recorded as an offset to operating expenses over the sublease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating leases are included in operating lease assets, other current liabilities, and lease liabilities on the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Impairment of Long-Lived Assets, Intangible Assets, and Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company evaluates its long-lived assets, consisting of property and equipment, operating lease assets, and intangible assets, for indicators of possible impairment when events or changes in circumstances indicate that the carrying amount of certain assets may not be recoverable. Impairment exists if the carrying amount of such assets exceed the estimates of future net undiscounted cash flows expected to be generated by such assets. Should impairment exist, the impairment loss would be measured based on the excess carrying amount of the assets over the estimated fair value of the assets. There have been no long-lived asset impairments during the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company tests goodwill for impairment annually, during the fourth quarter of each fiscal year, and in the interim whenever events or changes in circumstances indicate that the carrying amount may not be recoverable. The Company evaluates qualitative factors to determine whether it is more likely than not that the fair value of the Company&#x2019;s single reporting unit is less than its carrying amount as a basis for determining whether it is necessary to perform the goodwill impairment test. In performing the qualitative assessment, the Company considers events and circumstances, including, but not limited to, macroeconomic conditions, industry and market considerations, cost factors, overall financial performance, changes in management or key personnel, changes in strategy, changes in customers, changes in the composition or carrying amount of a reporting unit&#x2019;s net assets, and changes in the price of the Company&#x2019;s common stock. If, after assessing the totality of events or circumstances, the Company determines that it is more likely than not that the fair value of a reporting unit is greater than its carrying amount, then the goodwill impairment test is not performed. There have been no goodwill impairments during the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Convertible Senior Notes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2018, the Company issued&#160;$400.0&#160;million&#160;aggregate principal amount of&#160;1.25%&#160;Convertible Senior Notes due 2025 (the &#x201c;Convertible Senior Notes&#x201d;). The Company accounts for the liability and equity components of the issued Convertible Senior Notes separately. The carrying amount of the equity component, representing the conversion option, was determined by deducting the fair value of the liability component from the par value of the Convertible Senior Notes as a whole. This difference represents a debt discount that is amortized to interest expense using the effective interest method over the term of the Convertible Senior Notes. The carrying amount of the liability component was calculated by measuring the fair value of a similar liability that does not have an associated convertible feature. The liability and equity components will not be remeasured as long as the conversion option continues to meet the requirements for equity classification. The equity component is net of issuance costs and recorded in additional paid-in capital.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses its best estimates and assumptions to assign fair value to the tangible and intangible assets acquired and liabilities assumed at the acquisition date. Goodwill is calculated as the difference between the acquisition-date fair value of the consideration transferred and the values assigned to the assets acquired and liabilities assumed. The Company&#x2019;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and subject to refinement, and, as a result, actual results may differ from estimates. During the measurement period, which may be up to one year from the acquisition date, if new information is obtained about facts and circumstances that existed as of the acquisition date, the Company may record adjustments to the fair value of these assets and liabilities, with the corresponding offset to goodwill. Upon the conclusion of the measurement period or final determination of the fair value of assets acquired and liabilities assumed, whichever comes first, subsequent adjustments, if any, are recorded to the Company&#x2019;s consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Concentration of Credit Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial instruments that potentially subject the Company to concentrations of credit risk consist of cash, cash equivalents, investments, accounts receivable, and unbilled accounts receivable. The Company maintains its cash, cash equivalents, and investments with high quality financial institutions. The Company is exposed to credit risk for cash held in financial institutions in the event of a default to the extent that such amounts recorded in the consolidated balance sheets are in excess of amounts that are insured by the Federal Deposit Insurance Corporation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No customer individually accounted for 10% or more of the Company&#x2019;s revenue for the years ended July&#160;31, 2022, 2021, and 2020. As of July&#160;31, 2022 and July&#160;31, 2021, no customer accounted for 10% or more of the Company&#x2019;s total accounts receivable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Accounts Receivable and Allowances&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;&#160;&#160;&#160;&#160;Accounts receivable are recorded at invoiced amounts and do not bear interest. While the Company does not require collateral, the Company performs ongoing credit evaluations of its customers. The Company maintains an allowance for credit losses based upon the expected collectability of its accounts receivable. The expectation of collectability is based on historical loss patterns, the number &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;of days that billings are past due, and an evaluation of the potential risk of loss associated with delinquent accounts. Credit losses are recorded in general and administrative expense while billing and other revenue adjustments are recorded against the corresponding revenue financial statement line item in the consolidated statements of operations. &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:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s revenue is derived from contracts with customers. The majority of the Company&#x2019;s revenue is derived from subscriptions to its cloud services, licensing arrangements for its software, and implementation and other professional services arrangements. The Company accounts for revenue in accordance with Accounting Standards Codification 606, Revenue from Contracts with Customers (&#x201c;ASC 606&#x201d;). The core principle of ASC 606 is to recognize revenue upon the transfer of services or products to customers in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or products. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies the following framework to recognize revenue:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Identification of the contract, or contracts, with the customer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers the terms and conditions of written contracts and its customary business practices in identifying its contracts. The Company determines it has a contract with a customer when the contract is approved, the Company can identify each party&#x2019;s rights regarding the services and products to be transferred, the Company can identify the payment terms for the services and products, the Company has determined that the customer has the ability and intent to pay, and the contract has commercial substance. In general, contract terms will be reflected in a written document that is signed by both parties. At contract inception, the Company evaluates whether two or more contracts with the same customer should be combined and accounted for as a single contract. The customer&#x2019;s ability and intent to pay is based on a variety of factors, including the customer&#x2019;s historical payment experience or, in the case of a new customer, credit and financial information pertaining to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contracts may be modified to account for changes in contract scope or price. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights and obligations of either party. Contract modifications for services and products that are distinct from the existing contract and are priced commensurate with their standalone selling price are treated as separate contracts, and are accounted for prospectively. Contract modifications for services and products that are distinct but are not priced commensurate with their standalone selling price or are not distinct from the existing contract may affect the initial transaction price or the allocation of the transaction price to the performance obligations in the contract. In such cases, recognized revenue may be adjusted.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Identification of the performance obligation in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Performance obligations promised in a contract are identified based on the services or products that will be transferred to the customer that are both: &lt;/span&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;i.&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:12.73pt"&gt;capable of being distinct, whereby the customer can benefit from the service or product either on its own or together with other resources that are readily available from the Company or third parties, and &lt;/span&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;ii.&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:9.96pt"&gt;distinct in the context of the contract, whereby the transfer of the services or products is separately identifiable from other promises in the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;To the extent a contract includes multiple promised services or products, the Company applies judgment to determine whether promised services or products are capable of being distinct and distinct in the context of the contract. If these criteria are not met, the promised services or products are accounted for as a combined performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company generates revenue from the following sources, which represent the performance obligations of the Company:&lt;/span&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;i.&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:12.73pt"&gt;Subscription services related to the Company&#x2019;s Software-as-a-Service (&#x201c;SaaS&#x201d;) offerings, including hosting;&lt;/span&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;ii.&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:9.96pt"&gt;Support activities that consist of email and phone support, bug fixes, and unspecified software updates and upgrades released when, and if, available during the support term;&lt;/span&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;iii.&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:7.19pt"&gt;Self-managed software licenses related to term or perpetual agreements; and&lt;/span&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;iv.&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:7.73pt"&gt;Services related to the implementation and configuration of the Company&#x2019;s services and products, reimbursable travel, and training.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Subscriptions are typically sold with a three- to five-year initial term with a customer option to renew on an annual basis after the initial term. Term licenses generally have a two-year initial term with a customer option to renew on an annual basis after the &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;initial term. In certain circumstances, the Company will enter into term licenses with an initial term of more than two years or a renewal period longer than one year. Support for term licenses follows the same contract periods. Professional services typically are time and materials contracts that last for an average period of approximately one year. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Determination of the transaction price&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price is determined based on the consideration to which the Company expects to be entitled in exchange for transferring services and products to the customer. Consideration may vary due to discounts, incentives, and potential service level credits or contractual penalties. Variable consideration is estimated and included in the transaction price if, in the Company&#x2019;s judgment, it is probable that there will not be a significant future reversal of cumulative revenue under the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Self-managed software licenses and subscription services may be subject to either fixed or variable installments. Variable installments are generally subject to changes in a customer&#x2019;s Direct Written Premium (&#x201c;DWP&#x201d;) or a customer&#x2019;s Gross Written Premium (&#x201c;GWP&#x201d;). When consideration is subject to variable installments, the Company estimates variable consideration using the expected value method based on historical DWP or GWP usage to the extent that a significant revenue reversal is not probable to occur.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company elected the practical expedient to evaluate whether a significant financing component exists when the contract term is greater than one year and the timing of revenue recognition occurs in advance of invoicing. This timing difference occurs when control of the software license is transferred at a point in time, usually at the contract onset, but the customer payments occur over time. A significant financing component generally does not exist under the Company&#x2019;s standard contracting and billing practices. For example, the Company&#x2019;s typical time-based licenses have a two-year initial term with the final payment due at the end of the first year and the Company&#x2019;s typical subscription services are generally billed in advance of providing the services.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Allocation of the transaction price to the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;If the contract contains a single performance obligation, the entire transaction price is allocated to the single performance obligation. Contracts that contain multiple performance obligations require an allocation of the transaction price to each performance obligation based on its standalone selling price (&#x201c;SSP&#x201d;) in relation to the total fair value of all performance obligations in the arrangement. Some of the Company&#x2019;s performance obligations, such as support, implementation services, and training services, have observable inputs that are used to determine the SSP of those distinct performance obligations. Where SSP is not directly observable, the Company determines the SSP using information that may include market conditions and other observable inputs. In the circumstances when available information to determine SSP is highly variable or uncertain, such as for our term licenses, the Company will use the residual method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The majority of the Company&#x2019;s contracts contain multiple performance obligations, such as when licenses are sold with support, implementation services, or training services. Additionally, as customers enter into subscription agreements to migrate from an existing term license agreement, customers may be under contract for self-managed licenses and support, in addition to subscription services, for a period of time, which may require an allocation of the transaction price to each performance obligation. New and migration subscription agreements also typically include implementation, configuration, and training services, which may require an allocation of the transaction price to each performance obligation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recognition of revenue when, or as, the Company satisfies a performance obligation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes revenue when control of the services or products is transferred to a customer, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or products. The Company is principally responsible for the satisfaction of its distinct performance obligations, which are satisfied either at a point in time or over a period of time. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied at a point in time&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Self-managed term and perpetual software licenses comprise the majority of distinct performance obligations that are satisfied at a point in time. Revenue is recognized at the point in which the self-managed software licenses are made available to a customer. Consideration for self-managed software licenses is typically billed in advance on an annual basis over the license term, which is generally two years.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied over a period of time&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Subscriptions, support activities, and professional service arrangements comprise the majority of distinct performance obligations that are satisfied over a period of time.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from subscription arrangements is recognized ratably over the subscription period using a time-based measure of progress as customers receive the benefits from their subscriptions over the contractually agreed-upon term. The Company&#x2019;s &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;subscription arrangements are generally three to five years in duration. Consideration for subscription arrangements is typically billed in advance on an annual basis over the contract period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from support activities associated with self-managed licenses is a stand-ready obligation, which is generally recognized over the contractually agreed-upon term using a time-based measure of progress as customers receive benefits from the availability of support technicians over the support period. Consideration for support activities is typically billed in advance on an annual basis. The Company&#x2019;s support activities are consistently priced as a percentage of the associated self-managed software license.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from professional service arrangements is recognized over the service period as the underlying services are performed. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In substantially all of the Company&#x2019;s professional service contracts, services are separately identifiable performance obligations for which related revenue and costs are recognized according to when each service obligation is delivered. Substantially all professional services engagements are billed and recognized on a time and materials basis. In select situations, the Company will contract professional services on a fixed fee basis, where the Company generally recognizes services revenue over time, using an input method. The measure of progress of the professional services being provided under these fixed fee arrangements is based on hours incurred compared to estimates of the total hours to complete the performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When professional services are sold with a self-managed license or subscription arrangement, the Company evaluates whether the performance obligations are distinct or separately identifiable, or whether they constitute a single performance obligation. In the limited cases where professional services are not considered to be distinct from the self-managed license or subscription services, the Company will recognize revenue based on the nature and term of the combined performance obligation when control of the combined performance obligation is transferred to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Balance Sheet Presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contracts with customers are reflected in the consolidated balance sheets as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Accounts receivable, net represents amounts billed to customers in accordance with contract terms for which payment has not yet been received. It is presented net of any allowances as part of current assets in the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Unbilled accounts receivable, net represents amounts that are unbilled due to agreed-upon contractual terms in which billing occurs subsequent to revenue recognition. This situation typically occurs when the Company transfers control of self-managed software licenses to customers up-front, but invoices customers annually over the term of the license. Additionally, subscription agreements with ramped billing schedules could result in unbilled accounts receivable in the early years of the committed term. Unbilled accounts receivable is classified as either current or non-current based on the duration of remaining time between the date of the consolidated balance sheets and the anticipated due date of the underlying receivables. Unbilled accounts receivable is evaluated for credit losses based upon the expected collectibility of future accounts receivable, customer payment history, global economic conditions, and ongoing credit evaluations of customers. Unbilled accounts receivable is presented net of allowance for credit losses, if applicable, in the consolidated balance sheets. This balance represents contract assets. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Contract costs include customer acquisition costs, which consist primarily of sales commissions and related payroll taxes paid to sales personnel and referral fees paid to third-parties, and costs to fulfill a contract, which consist primarily of royalties payable to third-party software providers that support both the Company&#x2019;s software offerings and support services. The short-term portion is presented as prepaid and other current assets. The long-term portion is presented as other assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Deferred costs represent costs related to our professional services that have been deferred to align with revenue recognition. The short-term portion is presented as prepaid and other current assets. The long-term portion is presented as other assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Deferred revenue, net represents amounts that have been invoiced and for which the Company has the right to bill, but that have not been recognized as revenue because the related services or products have not been transferred to the customer. Deferred revenue consists primarily of subscriptions and support services that are billed annually in advance but recognized over time. Deferred revenue that will be realized during the 12-month period following the date of the consolidated balance sheets is recorded as current. The remaining deferred revenue is recorded as non-current. These balances represent contract liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company may receive consideration from its customers in advance of performance on a portion of the contract, thereby creating a contractual liability, and, on another portion of the contract, perform in advance of receiving consideration, thereby creating a contractual asset. Contract assets and liabilities related to rights and obligations in a contract are interdependent. Therefore, contract assets and liabilities are presented net at the contract level, as either a single contract asset or a single contract liability, in the consolidated balance sheets. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Remaining performance obligations represent contracted revenue that has not yet been recognized, which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. The Company excludes amounts related to professional services contracts that are on a time and materials basis from remaining performance obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Contract Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract costs consist of two components: customer acquisition costs and costs to fulfill a contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Customer acquisition costs are capitalized only if the costs are incrementally incurred to obtain a customer contract and the expected amortization period is greater than one year. Contract costs are classified as either current or non-current based on the duration of time remaining between the date of the consolidated balance sheets and the anticipated amortization date of the associated costs. Capitalized customer acquisition costs related to software licenses, subscriptions, and support services are amortized over the period of which the benefit is expected to be received, which the Company estimates to be approximately five years. The amortization of customer acquisition costs is classified as a sales and marketing expense in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Costs to fulfill a contract, or fulfillment costs, are only capitalized if they relate directly to a contract with a customer, the costs generate or enhance resources that will be used to satisfy performance obligations in the future, and the costs are expected to be recoverable. Fulfillment costs would be generally amortized over the same period of time as the customer acquisition costs. The amortization of fulfillment costs is classified as a cost of revenue in the consolidated statement of operations.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company generally provides a warranty for its software services and products to its customers for periods ranging from three to 12 months. The Company&#x2019;s software products are generally warranted to be free of defects in materials and workmanship under normal use and to substantially perform as described in published documentation. The Company&#x2019;s services are generally warranted to be performed in a professional manner and to materially conform to the specifications set forth in the related customer contract. In the event there is a failure of such warranties, the Company generally will correct the problem or provide a reasonable workaround or replacement product. If the Company cannot correct the problem or provide a workaround or replacement product, then the customer&#x2019;s remedy is generally limited to a refund of the fees paid for the non-conforming products or services. Warranty expense has been insignificant to date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Advertising Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Advertising costs are expensed as incurred and amounts incurred were not material during the years ended July&#160;31, 2022, 2021, and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for stock-based compensation using the fair value method, which requires the Company to measure stock-based compensation based on the grant-date fair value of the awards and recognize the compensation expense over the requisite service period. The Company recognizes compensation expense net of actual forfeitures. The Company has granted stock options, time-based restricted stock units (&#x201c;RSUs&#x201d;), performance-based restricted stock units (&#x201c;PSUs&#x201d;), and restricted stock units that may be earned subject to the Company&#x2019;s total shareholder return ranking relative to the software companies in the S&amp;amp;P Software and Services Select Industry Index (&#x201c;S&amp;amp;P Index&#x201d;) over a specified performance period or periods, service periods and, in select cases, performance conditions (&#x201c;TSR PSUs&#x201d;). RSUs, PSUs, and TSR PSUs are collectively referred to as &#x201c;Stock Awards.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Company&#x2019;s RSUs and PSUs is equal to the market value of the Company&#x2019;s common stock on the date of grant. These awards are subject to time-based vesting, which generally occurs over a period of three to four years. The Company recognizes compensation expense for awards that contain only service conditions on a straight-line basis over the requisite service period, which is generally the vesting period of the respective awards. The Company recognizes the compensation cost for awards that contain either performance conditions, market conditions, or both using the graded vesting method and a portion of the expense may fluctuate depending on changing estimates of the achievement of the performance conditions. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Company&#x2019;s stock options is estimated at the grant date using the Black-Scholes option-pricing model. Recently granted stock options are subject to time-based vesting, which generally occurs over a period of two years. The Company recognizes compensation expense for stock options that contain only service conditions on a straight-line basis over the requisite service period, which is generally the vesting period of the respective stock options. The inputs used in the Black-Scholes option-pricing model are subjective and generally requires significant judgment to determine.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected Term &#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 expected term represents the period that the stock-based awards are expected to be outstanding. The simplified method calculates the expected term as the average of the time-to-vesting and the contractual life of the options. The Company uses the simplified method to determine its expected term because of its limited history of stock option exercise activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected Volatility &#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 expected volatility is derived from the historical volatility of the Company&#x2019;s common stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Risk-Free Interest Rate &#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 risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for zero coupon U.S. Treasury notes with maturities approximately equal to the expected term of the options.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected Dividend &#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 expected dividend is zero, as the Company has never paid dividends and has no expectations to do so.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Company&#x2019;s TSR PSUs is estimated at the grant date using a Monte Carlo simulation method. The assumptions utilized under this method requires judgments and estimates and changes in these inputs and assumptions could affect the measurement of the estimated fair value of the related compensation expense. Compensation expense associated with TSR PSUs will be recognized over the vesting period regardless of whether the market condition is ultimately satisfied; however, the expense will be reversed if a grantee terminates prior to satisfying the requisite service period. For TSR PSUs containing an additional performance condition, a portion of the expense may fluctuate depending on estimates of the achievement of the performance conditions.&#160;All TSR PSUs will vest at the end of a three-year period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Income taxes are accounted for under the asset and liability method. Under this method, the Company determines deferred tax assets and liabilities on the basis of the differences between the financial statement carrying amounts and tax basis of existing assets and liabilities by using enacted tax rates in effect for the year in which the differences are expected to reverse. All deferred tax assets and liabilities are classified as non-current on the Company&#x2019;s consolidated balance sheets. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance against deferred tax assets is recorded when it is more likely than not that some portion or all of such deferred tax assets will not be realized and is based on both positive and negative evidence about the future, including future reversals of existing taxable temporary differences, projected future taxable income, tax-planning strategies, and results of recent operations. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effective tax rate in any given financial statement period may differ materially from the statutory rate. These differences may be caused by changes in tax regulations and resulting changes in the deferred tax valuation allowance; changes in the mix and level of income or losses; changes in the expected outcome of tax audits; permanent differences for stock-based compensation, including excess tax benefits; research and development credits; the tax rate differences between the United States and foreign countries; foreign withholding taxes; certain non-deductible expenses, including executive compensation; acquisition-related expenses; and provisions under the Tax Cuts and Jobs Act of 2017 (the &#x201c;Tax Act&#x201d;), including a provision to tax global intangible low-taxed income of foreign subsidiaries, a special deduction for foreign-derived intangible income, and a base erosion anti-abuse tax that may tax certain payments between a U.S. corporation and its foreign subsidiaries. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records interest and penalties related to unrecognized tax benefits as income tax expense in its consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:174%"&gt;Recent Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Debt &#x2014; Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging &#x2014; Contracts in Entity&#x2019;s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity&#x2019;s Own Equity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2020, the FASB issued ASU No. 2020-06, &#x201c;Debt&lt;/span&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; &#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;Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging&lt;/span&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; &#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;Contracts in Entity&#x2019;s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity&#x2019;s Own Equity&#x201d;, which simplifies the accounting for convertible instruments by eliminating the requirement to separate embedded conversion features from the host contract when the conversion features are not required to be accounted for as derivatives under Topic 815, Derivatives and Hedging, or that do not result in substantial premiums accounted for as paid-in capital. By removing the separation model, a convertible debt instrument will be reported as a single liability instrument with no separate accounting for embedded conversion features. This new standard also removes certain settlement conditions that are required for contracts to qualify for equity classification and simplifies the diluted earnings per share calculations by requiring that an entity use the &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;if-converted method and that the effect of potential share settlement be included in diluted earnings per share calculations. The new standard will be effective and the Company will adopt it beginning August 1, 2022. The Company will adopt the standard on a modified retrospective basis and will not restate comparative periods. Upon adoption, the Company expects the requirement to use the if-converted method instead of the treasury stock method of accounting for the shares issuable upon conversion of the Convertible Senior Notes will most likely adversely affect diluted earnings per share. On the adoption date, the Company expects to record in the consolidated balance sheets an increase to Convertible Senior Notes, net of approximately $37&#160;million, a decrease to accumulated deficit of approximately $40&#160;million, a decrease to additional paid-in capital of approximately $68&#160;million, and a decrease to deferred tax liability of approximately $9&#160;million. Additionally, there will be an impact to the consolidated financial statements due to the removal of the equity component of the debt and the associated impact of such adjustment to the accretion of debt discount, which will result in a decrease in interest expense.&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:700;line-height:120%"&gt;Other Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other recent accounting pronouncements that will be applicable to the Company are not expected to have a material impact on its present or future financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock>
    <gwre:NatureOfOperationsPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDI0MTg_14662904-7c89-4371-91a8-bb42ae85569b">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Company&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Guidewire Software, Inc., a Delaware corporation, was incorporated on September&#160;20, 2001. Guidewire Software, Inc., together with its subsidiaries (the &#x201c;Company&#x201d;), provides a technology platform which combines core operations, digital engagement, analytics, and artificial intelligence (&#x201c;AI&#x201d;) applications. The Company&#x2019;s technology platform supports core insurance operations, including underwriting, policy administration, claim management, and billing; insights into data that can improve business decision making; and digital sales, service, and claims experiences for policyholders, agents, and other key stakeholders. The Company&#x2019;s customers are primarily property and casualty insurance carriers.&lt;/span&gt;&lt;/div&gt;</gwre:NatureOfOperationsPolicyTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMzM_7f496305-09ec-44e7-b442-9c65e9b181ee">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of Presentation and Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (&#x201c;GAAP&#x201d;). The consolidated financial statements and notes include the Company and its wholly-owned subsidiaries and reflect all adjustments (all of which are normal and recurring in nature) that, in the opinion of management, are necessary for a fair presentation of the periods presented. All intercompany balances and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMzQ_cedd68b3-2e4e-404f-b0d0-f874be3e014c">&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of the accompanying consolidated financial statements in conformity with GAAP requires management to make estimates and assumptions about future events that affect the amounts of assets and liabilities reported, disclosures about contingent assets and liabilities, and reported amounts of revenue and expenses. Significant items subject to such estimates include, but are not limited to, revenue recognition, the useful lives of property and equipment and intangible assets, accounts receivable and unbilled accounts receivable allowances, valuation allowance for deferred tax assets, stock-based compensation, annual bonus attainment, income tax uncertainties, fair value of convertible senior notes and investments, valuation of goodwill and intangible assets, fair value of acquired assets and assumed liabilities, software development costs to be capitalized, leases, and contingencies. These estimates and assumptions are based on management&#x2019;s best estimates and judgment. Management regularly evaluates its estimates and assumptions using historical experience and other factors; however, actual results could differ from these estimates.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNjg_c87c631e-1996-4eaf-8a31-1e2eedcd5506">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Foreign Currency &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The functional currency of the Company&#x2019;s foreign subsidiaries is their respective local currency. The Company translates all assets and liabilities of foreign subsidiaries to U.S. dollars at the current exchange rate as of the applicable balance sheet date. Revenue and expenses are translated at the average exchange rate prevailing during the period in which the transactions occur. The effects of foreign currency translations are recorded in accumulated other comprehensive income (loss) as a separate component of stockholders&#x2019; equity in the accompanying consolidated balance sheets. Transaction gains and losses that arise from exchange rate fluctuations on transactions denominated in a currency other than the functional currency&#160;of the recording entity are included in other income (expense) in the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMTY_a188289e-4fbc-412c-8195-eff2008151fc">Cash and Cash EquivalentsCash and cash equivalents are comprised of cash and highly liquid investments with remaining maturities of 90 days or less at the date of purchase. Cash equivalents primarily consist of commercial paper and money market funds.</us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:InvestmentPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMDY_b849833a-17e7-4fa7-a137-6ad1cbe0d2f6">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Investments &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management determines the appropriate classification of investments at the time of purchase based upon management&#x2019;s intent with regard to such investments. All investments in the periods presented have been classified as available-for-sale.&lt;/span&gt;&lt;/div&gt;The Company classifies investments as short-term when they have remaining contractual maturities of one year or less from the balance sheet date, and as long-term when the investments have remaining contractual maturities of more than one year from the balance sheet date. Investments are recorded at fair value with unrealized holding gains and losses, net of taxes, generally included in accumulated other comprehensive income (loss). Unrealized losses related to the credit worthiness of an investment, if any, are recorded in other income (expense), net on the consolidated statements of operations.</us-gaap:InvestmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzODU_01b3da09-4d40-4c8b-960b-e653386e86a6">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Property, Equipment, and Software Development Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost less accumulated depreciation and amortization. Depreciation is calculated on a straight-line basis over the estimated useful lives of the assets. Maintenance and repairs that do not extend the life or improve an asset are expensed in the period incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated useful lives of property and equipment are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&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:10pt;font-weight:400;line-height:100%"&gt;Computer hardware&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&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:10pt;font-weight:400;line-height:100%"&gt;Purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Software development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 to 5 years&lt;/span&gt;&lt;/div&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:10pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 to 5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 years&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:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shorter of 10 years or remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <gwre:ScheduleOfEstimatedUsefulLivesOfPropertyAndEquipmentTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMTc_fe603d5f-eb29-4c6b-93da-0ffc27576fc9">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated useful lives of property and equipment are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&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:10pt;font-weight:400;line-height:100%"&gt;Computer hardware&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&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:10pt;font-weight:400;line-height:100%"&gt;Purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Software development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 to 5 years&lt;/span&gt;&lt;/div&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:10pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 to 5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5 years&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:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shorter of 10 years or remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</gwre:ScheduleOfEstimatedUsefulLivesOfPropertyAndEquipmentTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="id7e819f3a81b4325afb3fd45707fdb0a_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMC0yLTEtMS05NTY0Mg_e5efe101-901b-4746-9079-32c1de52c999">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="iafc75198a1f348db9532f5331697c736_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMS0yLTEtMS05NTY0Mg_1a8147d0-17fe-48b2-a940-9e097d7ecb5d">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i88667aa326904fb58ca9e0ece0920e95_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMi0yLTEtMS05OTcyNS90ZXh0cmVnaW9uOjY2ODFlMmViMmIwYzQ1MjU4Njc1MjQ4MDBlYzE3Y2M5XzEwOTk1MTE2Mjc3Nzk1_93902613-c753-4565-86b7-7ae3753237dd">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i6ca5fdba7a484aa5a8c1542647d8e5d3_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMi0yLTEtMS05OTcyNS90ZXh0cmVnaW9uOjY2ODFlMmViMmIwYzQ1MjU4Njc1MjQ4MDBlYzE3Y2M5XzEwOTk1MTE2Mjc3ODAx_9d880bdc-5205-41de-9797-d013e59ba931">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i929d93a0ce264e2fa55c7b45f0ac2afe_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMi0yLTEtMS05NTY0Mi90ZXh0cmVnaW9uOmY0ZjhhMGRkMTRiMDQ1ODVhMWM4MWYzZGQyNjNhNmFmXzQ_7f30a685-5487-4cf7-b19c-78d1c9a4d349">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i8a0e59d3d16f4fe38513ca04e0dab7a1_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMi0yLTEtMS05NTY0Mi90ZXh0cmVnaW9uOmY0ZjhhMGRkMTRiMDQ1ODVhMWM4MWYzZGQyNjNhNmFmXzEw_6f8f3a99-feee-4662-8a30-ea2c318045ac">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="iab0c93caf8664302aba70edad723839b_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfMy0yLTEtMS05NTY0Mg_20ee5f67-167a-4315-82bd-67319470a8cb">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives
      contextRef="i5168c5af4d534b3fba898acbd66aeb39_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RhYmxlOmVkM2YyZjQ5ZmM5OTQ4YzY4MDE3NGFiNzE0OTQ1MDExL3RhYmxlcmFuZ2U6ZWQzZjJmNDlmYzk5NDhjNjgwMTc0YWI3MTQ5NDUwMTFfNC0yLTEtMS05NTY0Mg_569c6cf4-a584-4645-b698-45bfd4e5a564">Shorter of 10 years or remaining lease term</us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives>
    <us-gaap:ResearchDevelopmentAndComputerSoftwarePolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzOTc_74d5932e-db12-4e31-9332-308b9eb7ec84">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain development costs related to software delivered to customers (&#x201c;self-managed software&#x201d;) incurred subsequent to the establishment of technological feasibility are subject to capitalization and amortized over the estimated lives of the related products. Technological feasibility is established upon completion of a working model. Costs incurred subsequent to the establishment of technological feasibility have not been material and, therefore, all software development costs related to self-managed software have been charged to research and development expense in the accompanying consolidated statements of operations as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company capitalizes software development costs for technology applications that provide new or significantly enhanced functionality that the Company will offer solely as a cloud-based subscription. Capitalized costs are primarily comprised of compensation for employees who are directly associated with cloud software development projects. The Company begins to capitalize costs when preliminary development efforts are successfully completed, management has authorized and committed project funding, it is probable that the project will be completed, and the software will be used as intended. If any of these criteria cease being met before the software reaches its intended use, any capitalized costs related to the project will be impaired. When the software reaches its intended use which is typically once the technology applications are available for general release, capitalized costs are amortized to cost of revenue over the estimated useful lives of the related assets, generally estimated to be &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNzI4Mg_44c6ccb7-3b39-4abf-83e9-ed8ccb3ecd50"&gt;three&lt;/span&gt; to five years. Costs incurred prior to meeting these capitalization criteria and costs incurred for training and maintenance are recorded as research and development expense in the Company&#x2019;s consolidated statements of operations. Capitalized software development costs are recorded in property and equipment in the Company&#x2019;s consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:ResearchDevelopmentAndComputerSoftwarePolicyTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i52bd6114fabd423a8891477282a8728b_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNzI4OA_4a77fe7e-de35-4129-ade7-73b27dbf5047">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDI0Mjk_106dc776-013d-4a6e-b56e-9f1b8c02216f">&lt;div style="margin-top:14pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for leases under Accounting Standards Codification Topic 842: Leases (&#x201c;ASC 842&#x201d;) issued by the Financial Accounting Standards Board. Under ASC 842, the Company determines if an arrangement is a lease at inception of the agreement. If an arrangement is determined to be a lease, an operating lease asset, also known as a right-of-use asset, and lease liability are recorded based on the present value of lease payments over the non-cancellable lease term. In connection with determining the present value of the lease payments, the Company considers only payments that are fixed and determinable at the time of commencement, including non-lease components that are fixed throughout the lease term. Variable components of the lease payments, such as utilities, maintenance, and taxes, are expensed as incurred and not included in determining the present value of the lease liability. As the Company's leases generally do not provide an implicit rate, the Company's incremental borrowing rate, calculated based on available information at the lease commencement date, is used in determining the present value of the lease payments. The Company's incremental borrowing rate is a hypothetical rate based on the Company's understanding of its credit rating. The lease term used to calculate the lease liability and operating lease asset includes options to extend or terminate the lease if it is reasonably certain the Company will exercise that option. Operating lease assets also include any lease payments made prior to commencement and are recorded net of any lease incentives received. Lease expense is recognized on a straight-line basis over the lease term and is reflected in the consolidated statements of operations in each of the cost of revenue and operating expense categories.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also enters into agreements to sublease unoccupied office space. Any sublease payments received in excess of the straight-line rent expense related to the subleased space are recorded as an offset to operating expenses over the sublease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating leases are included in operating lease assets, other current liabilities, and lease liabilities on the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMTI_8fc60b58-4e4a-4441-8e7f-bb72bc76467f">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Impairment of Long-Lived Assets, Intangible Assets, and Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company evaluates its long-lived assets, consisting of property and equipment, operating lease assets, and intangible assets, for indicators of possible impairment when events or changes in circumstances indicate that the carrying amount of certain assets may not be recoverable. Impairment exists if the carrying amount of such assets exceed the estimates of future net undiscounted cash flows expected to be generated by such assets. Should impairment exist, the impairment loss would be measured based on the excess carrying amount of the assets over the estimated fair value of the assets. There have been no long-lived asset impairments during the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company tests goodwill for impairment annually, during the fourth quarter of each fiscal year, and in the interim whenever events or changes in circumstances indicate that the carrying amount may not be recoverable. The Company evaluates qualitative factors to determine whether it is more likely than not that the fair value of the Company&#x2019;s single reporting unit is less than its carrying amount as a basis for determining whether it is necessary to perform the goodwill impairment test. In performing the qualitative assessment, the Company considers events and circumstances, including, but not limited to, macroeconomic conditions, industry and market considerations, cost factors, overall financial performance, changes in management or key personnel, changes in strategy, changes in customers, changes in the composition or carrying amount of a reporting unit&#x2019;s net assets, and changes in the price of the Company&#x2019;s common stock. If, after assessing the totality of events or circumstances, the Company determines that it is more likely than not that the fair value of a reporting unit is greater than its carrying amount, then the goodwill impairment test is not performed. There have been no goodwill impairments during the periods presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTE4NjQ_138b99bd-14af-4845-abe0-f856c061de93"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTE4NjQ_17419f88-3146-497f-98bf-02ac6d9f5b7f"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTE4NjQ_5f2a4d81-b811-4745-904b-0f76b138eb29"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:DebtPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNzk_9a12ba10-f80b-4299-9802-3c82969d16b3">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Convertible Senior Notes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2018, the Company issued&#160;$400.0&#160;million&#160;aggregate principal amount of&#160;1.25%&#160;Convertible Senior Notes due 2025 (the &#x201c;Convertible Senior Notes&#x201d;). The Company accounts for the liability and equity components of the issued Convertible Senior Notes separately. The carrying amount of the equity component, representing the conversion option, was determined by deducting the fair value of the liability component from the par value of the Convertible Senior Notes as a whole. This difference represents a debt discount that is amortized to interest expense using the effective interest method over the term of the Convertible Senior Notes. The carrying amount of the liability component was calculated by measuring the fair value of a similar liability that does not have an associated convertible feature. The liability and equity components will not be remeasured as long as the conversion option continues to meet the requirements for equity classification. The equity component is net of issuance costs and recorded in additional paid-in capital.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtPolicyTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="id604afc52512408d8e9d47b596579168_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTE5Nzc_0040e7af-5017-4ae6-93f5-c2b57b0d9b24"
      unitRef="usd">400000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="id604afc52512408d8e9d47b596579168_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTIwMTA_c7b1fe94-d284-49ea-a0d7-7ac29af8436d"
      unitRef="number">0.0125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDI0MjE_64a0f88c-e312-4524-a012-8674215694cb">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses its best estimates and assumptions to assign fair value to the tangible and intangible assets acquired and liabilities assumed at the acquisition date. Goodwill is calculated as the difference between the acquisition-date fair value of the consideration transferred and the values assigned to the assets acquired and liabilities assumed. The Company&#x2019;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and subject to refinement, and, as a result, actual results may differ from estimates. During the measurement period, which may be up to one year from the acquisition date, if new information is obtained about facts and circumstances that existed as of the acquisition date, the Company may record adjustments to the fair value of these assets and liabilities, with the corresponding offset to goodwill. Upon the conclusion of the measurement period or final determination of the fair value of assets acquired and liabilities assumed, whichever comes first, subsequent adjustments, if any, are recorded to the Company&#x2019;s consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMjQ_c6b65b37-c45f-43b2-bac6-d60008f70670">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Concentration of Credit Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial instruments that potentially subject the Company to concentrations of credit risk consist of cash, cash equivalents, investments, accounts receivable, and unbilled accounts receivable. The Company maintains its cash, cash equivalents, and investments with high quality financial institutions. The Company is exposed to credit risk for cash held in financial institutions in the event of a default to the extent that such amounts recorded in the consolidated balance sheets are in excess of amounts that are insured by the Federal Deposit Insurance Corporation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No customer individually accounted for 10% or more of the Company&#x2019;s revenue for the years ended July&#160;31, 2022, 2021, and 2020. As of July&#160;31, 2022 and July&#160;31, 2021, no customer accounted for 10% or more of the Company&#x2019;s total accounts receivable.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNTA_cef88581-7ccd-4d07-b9b4-661e7c1fc393">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Accounts Receivable and Allowances&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;&#160;&#160;&#160;&#160;Accounts receivable are recorded at invoiced amounts and do not bear interest. While the Company does not require collateral, the Company performs ongoing credit evaluations of its customers. The Company maintains an allowance for credit losses based upon the expected collectability of its accounts receivable. The expectation of collectability is based on historical loss patterns, the number &lt;/span&gt;&lt;/div&gt;of days that billings are past due, and an evaluation of the potential risk of loss associated with delinquent accounts. Credit losses are recorded in general and administrative expense while billing and other revenue adjustments are recorded against the corresponding revenue financial statement line item in the consolidated statements of operations.</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDI0MjU_3d4a5ef1-1a74-4f9a-8dff-ff97a2040324">&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:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s revenue is derived from contracts with customers. The majority of the Company&#x2019;s revenue is derived from subscriptions to its cloud services, licensing arrangements for its software, and implementation and other professional services arrangements. The Company accounts for revenue in accordance with Accounting Standards Codification 606, Revenue from Contracts with Customers (&#x201c;ASC 606&#x201d;). The core principle of ASC 606 is to recognize revenue upon the transfer of services or products to customers in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or products. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies the following framework to recognize revenue:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Identification of the contract, or contracts, with the customer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers the terms and conditions of written contracts and its customary business practices in identifying its contracts. The Company determines it has a contract with a customer when the contract is approved, the Company can identify each party&#x2019;s rights regarding the services and products to be transferred, the Company can identify the payment terms for the services and products, the Company has determined that the customer has the ability and intent to pay, and the contract has commercial substance. In general, contract terms will be reflected in a written document that is signed by both parties. At contract inception, the Company evaluates whether two or more contracts with the same customer should be combined and accounted for as a single contract. The customer&#x2019;s ability and intent to pay is based on a variety of factors, including the customer&#x2019;s historical payment experience or, in the case of a new customer, credit and financial information pertaining to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contracts may be modified to account for changes in contract scope or price. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights and obligations of either party. Contract modifications for services and products that are distinct from the existing contract and are priced commensurate with their standalone selling price are treated as separate contracts, and are accounted for prospectively. Contract modifications for services and products that are distinct but are not priced commensurate with their standalone selling price or are not distinct from the existing contract may affect the initial transaction price or the allocation of the transaction price to the performance obligations in the contract. In such cases, recognized revenue may be adjusted.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Identification of the performance obligation in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Performance obligations promised in a contract are identified based on the services or products that will be transferred to the customer that are both: &lt;/span&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;i.&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:12.73pt"&gt;capable of being distinct, whereby the customer can benefit from the service or product either on its own or together with other resources that are readily available from the Company or third parties, and &lt;/span&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;ii.&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:9.96pt"&gt;distinct in the context of the contract, whereby the transfer of the services or products is separately identifiable from other promises in the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;To the extent a contract includes multiple promised services or products, the Company applies judgment to determine whether promised services or products are capable of being distinct and distinct in the context of the contract. If these criteria are not met, the promised services or products are accounted for as a combined performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company generates revenue from the following sources, which represent the performance obligations of the Company:&lt;/span&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;i.&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:12.73pt"&gt;Subscription services related to the Company&#x2019;s Software-as-a-Service (&#x201c;SaaS&#x201d;) offerings, including hosting;&lt;/span&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;ii.&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:9.96pt"&gt;Support activities that consist of email and phone support, bug fixes, and unspecified software updates and upgrades released when, and if, available during the support term;&lt;/span&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;iii.&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:7.19pt"&gt;Self-managed software licenses related to term or perpetual agreements; and&lt;/span&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;iv.&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:7.73pt"&gt;Services related to the implementation and configuration of the Company&#x2019;s services and products, reimbursable travel, and training.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Subscriptions are typically sold with a three- to five-year initial term with a customer option to renew on an annual basis after the initial term. Term licenses generally have a two-year initial term with a customer option to renew on an annual basis after the &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;initial term. In certain circumstances, the Company will enter into term licenses with an initial term of more than two years or a renewal period longer than one year. Support for term licenses follows the same contract periods. Professional services typically are time and materials contracts that last for an average period of approximately one year. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Determination of the transaction price&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price is determined based on the consideration to which the Company expects to be entitled in exchange for transferring services and products to the customer. Consideration may vary due to discounts, incentives, and potential service level credits or contractual penalties. Variable consideration is estimated and included in the transaction price if, in the Company&#x2019;s judgment, it is probable that there will not be a significant future reversal of cumulative revenue under the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Self-managed software licenses and subscription services may be subject to either fixed or variable installments. Variable installments are generally subject to changes in a customer&#x2019;s Direct Written Premium (&#x201c;DWP&#x201d;) or a customer&#x2019;s Gross Written Premium (&#x201c;GWP&#x201d;). When consideration is subject to variable installments, the Company estimates variable consideration using the expected value method based on historical DWP or GWP usage to the extent that a significant revenue reversal is not probable to occur.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company elected the practical expedient to evaluate whether a significant financing component exists when the contract term is greater than one year and the timing of revenue recognition occurs in advance of invoicing. This timing difference occurs when control of the software license is transferred at a point in time, usually at the contract onset, but the customer payments occur over time. A significant financing component generally does not exist under the Company&#x2019;s standard contracting and billing practices. For example, the Company&#x2019;s typical time-based licenses have a two-year initial term with the final payment due at the end of the first year and the Company&#x2019;s typical subscription services are generally billed in advance of providing the services.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Allocation of the transaction price to the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;If the contract contains a single performance obligation, the entire transaction price is allocated to the single performance obligation. Contracts that contain multiple performance obligations require an allocation of the transaction price to each performance obligation based on its standalone selling price (&#x201c;SSP&#x201d;) in relation to the total fair value of all performance obligations in the arrangement. Some of the Company&#x2019;s performance obligations, such as support, implementation services, and training services, have observable inputs that are used to determine the SSP of those distinct performance obligations. Where SSP is not directly observable, the Company determines the SSP using information that may include market conditions and other observable inputs. In the circumstances when available information to determine SSP is highly variable or uncertain, such as for our term licenses, the Company will use the residual method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The majority of the Company&#x2019;s contracts contain multiple performance obligations, such as when licenses are sold with support, implementation services, or training services. Additionally, as customers enter into subscription agreements to migrate from an existing term license agreement, customers may be under contract for self-managed licenses and support, in addition to subscription services, for a period of time, which may require an allocation of the transaction price to each performance obligation. New and migration subscription agreements also typically include implementation, configuration, and training services, which may require an allocation of the transaction price to each performance obligation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recognition of revenue when, or as, the Company satisfies a performance obligation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes revenue when control of the services or products is transferred to a customer, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or products. The Company is principally responsible for the satisfaction of its distinct performance obligations, which are satisfied either at a point in time or over a period of time. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied at a point in time&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Self-managed term and perpetual software licenses comprise the majority of distinct performance obligations that are satisfied at a point in time. Revenue is recognized at the point in which the self-managed software licenses are made available to a customer. Consideration for self-managed software licenses is typically billed in advance on an annual basis over the license term, which is generally two years.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance obligations satisfied over a period of time&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Subscriptions, support activities, and professional service arrangements comprise the majority of distinct performance obligations that are satisfied over a period of time.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from subscription arrangements is recognized ratably over the subscription period using a time-based measure of progress as customers receive the benefits from their subscriptions over the contractually agreed-upon term. The Company&#x2019;s &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;subscription arrangements are generally three to five years in duration. Consideration for subscription arrangements is typically billed in advance on an annual basis over the contract period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from support activities associated with self-managed licenses is a stand-ready obligation, which is generally recognized over the contractually agreed-upon term using a time-based measure of progress as customers receive benefits from the availability of support technicians over the support period. Consideration for support activities is typically billed in advance on an annual basis. The Company&#x2019;s support activities are consistently priced as a percentage of the associated self-managed software license.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from professional service arrangements is recognized over the service period as the underlying services are performed. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In substantially all of the Company&#x2019;s professional service contracts, services are separately identifiable performance obligations for which related revenue and costs are recognized according to when each service obligation is delivered. Substantially all professional services engagements are billed and recognized on a time and materials basis. In select situations, the Company will contract professional services on a fixed fee basis, where the Company generally recognizes services revenue over time, using an input method. The measure of progress of the professional services being provided under these fixed fee arrangements is based on hours incurred compared to estimates of the total hours to complete the performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When professional services are sold with a self-managed license or subscription arrangement, the Company evaluates whether the performance obligations are distinct or separately identifiable, or whether they constitute a single performance obligation. In the limited cases where professional services are not considered to be distinct from the self-managed license or subscription services, the Company will recognize revenue based on the nature and term of the combined performance obligation when control of the combined performance obligation is transferred to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Balance Sheet Presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contracts with customers are reflected in the consolidated balance sheets as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Accounts receivable, net represents amounts billed to customers in accordance with contract terms for which payment has not yet been received. It is presented net of any allowances as part of current assets in the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Unbilled accounts receivable, net represents amounts that are unbilled due to agreed-upon contractual terms in which billing occurs subsequent to revenue recognition. This situation typically occurs when the Company transfers control of self-managed software licenses to customers up-front, but invoices customers annually over the term of the license. Additionally, subscription agreements with ramped billing schedules could result in unbilled accounts receivable in the early years of the committed term. Unbilled accounts receivable is classified as either current or non-current based on the duration of remaining time between the date of the consolidated balance sheets and the anticipated due date of the underlying receivables. Unbilled accounts receivable is evaluated for credit losses based upon the expected collectibility of future accounts receivable, customer payment history, global economic conditions, and ongoing credit evaluations of customers. Unbilled accounts receivable is presented net of allowance for credit losses, if applicable, in the consolidated balance sheets. This balance represents contract assets. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Contract costs include customer acquisition costs, which consist primarily of sales commissions and related payroll taxes paid to sales personnel and referral fees paid to third-parties, and costs to fulfill a contract, which consist primarily of royalties payable to third-party software providers that support both the Company&#x2019;s software offerings and support services. The short-term portion is presented as prepaid and other current assets. The long-term portion is presented as other assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Deferred costs represent costs related to our professional services that have been deferred to align with revenue recognition. The short-term portion is presented as prepaid and other current assets. The long-term portion is presented as other assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:60.75pt;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;Deferred revenue, net represents amounts that have been invoiced and for which the Company has the right to bill, but that have not been recognized as revenue because the related services or products have not been transferred to the customer. Deferred revenue consists primarily of subscriptions and support services that are billed annually in advance but recognized over time. Deferred revenue that will be realized during the 12-month period following the date of the consolidated balance sheets is recorded as current. The remaining deferred revenue is recorded as non-current. These balances represent contract liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company may receive consideration from its customers in advance of performance on a portion of the contract, thereby creating a contractual liability, and, on another portion of the contract, perform in advance of receiving consideration, thereby creating a contractual asset. Contract assets and liabilities related to rights and obligations in a contract are interdependent. Therefore, contract assets and liabilities are presented net at the contract level, as either a single contract asset or a single contract liability, in the consolidated balance sheets. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Remaining performance obligations represent contracted revenue that has not yet been recognized, which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. The Company excludes amounts related to professional services contracts that are on a time and materials basis from remaining performance obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Contract Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract costs consist of two components: customer acquisition costs and costs to fulfill a contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Customer acquisition costs are capitalized only if the costs are incrementally incurred to obtain a customer contract and the expected amortization period is greater than one year. Contract costs are classified as either current or non-current based on the duration of time remaining between the date of the consolidated balance sheets and the anticipated amortization date of the associated costs. Capitalized customer acquisition costs related to software licenses, subscriptions, and support services are amortized over the period of which the benefit is expected to be received, which the Company estimates to be approximately five years. The amortization of customer acquisition costs is classified as a sales and marketing expense in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;Costs to fulfill a contract, or fulfillment costs, are only capitalized if they relate directly to a contract with a customer, the costs generate or enhance resources that will be used to satisfy performance obligations in the future, and the costs are expected to be recoverable. Fulfillment costs would be generally amortized over the same period of time as the customer acquisition costs. The amortization of fulfillment costs is classified as a cost of revenue in the consolidated statement of operations.</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:RevenuePerformanceObligationDescriptionOfTiming
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzOTI_4ee2d5e1-a65e-44a5-99af-b178a26541ed">Revenue from subscription arrangements is recognized ratably over the subscription period using a time-based measure of progress as customers receive the benefits from their subscriptions over the contractually agreed-upon term. The Company&#x2019;s subscription arrangements are generally three to five years in duration. Consideration for subscription arrangements is typically billed in advance on an annual basis over the contract period.</us-gaap:RevenuePerformanceObligationDescriptionOfTiming>
    <us-gaap:CapitalizedContractCostAmortizationPeriod
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMzE5MzE_f7756800-bbf8-4f1d-9849-d80edfb31f47">P5Y</us-gaap:CapitalizedContractCostAmortizationPeriod>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNTE_3040ff77-094e-42bf-9675-c621fe32084e">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company generally provides a warranty for its software services and products to its customers for periods ranging from three to 12 months. The Company&#x2019;s software products are generally warranted to be free of defects in materials and workmanship under normal use and to substantially perform as described in published documentation. The Company&#x2019;s services are generally warranted to be performed in a professional manner and to materially conform to the specifications set forth in the related customer contract. In the event there is a failure of such warranties, the Company generally will correct the problem or provide a reasonable workaround or replacement product. If the Company cannot correct the problem or provide a workaround or replacement product, then the customer&#x2019;s remedy is generally limited to a refund of the fees paid for the non-conforming products or services. Warranty expense has been insignificant to date.&lt;/span&gt;&lt;/div&gt;</us-gaap:StandardProductWarrantyPolicy>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNDM_57e310a5-e79c-4708-a438-5c32dedb37cc">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Advertising Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Advertising costs are expensed as incurred and amounts incurred were not material during the years ended July&#160;31, 2022, 2021, and 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDI0MDc_27d51072-d6c5-4524-90ef-0211ea066006">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for stock-based compensation using the fair value method, which requires the Company to measure stock-based compensation based on the grant-date fair value of the awards and recognize the compensation expense over the requisite service period. The Company recognizes compensation expense net of actual forfeitures. The Company has granted stock options, time-based restricted stock units (&#x201c;RSUs&#x201d;), performance-based restricted stock units (&#x201c;PSUs&#x201d;), and restricted stock units that may be earned subject to the Company&#x2019;s total shareholder return ranking relative to the software companies in the S&amp;amp;P Software and Services Select Industry Index (&#x201c;S&amp;amp;P Index&#x201d;) over a specified performance period or periods, service periods and, in select cases, performance conditions (&#x201c;TSR PSUs&#x201d;). RSUs, PSUs, and TSR PSUs are collectively referred to as &#x201c;Stock Awards.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Company&#x2019;s RSUs and PSUs is equal to the market value of the Company&#x2019;s common stock on the date of grant. These awards are subject to time-based vesting, which generally occurs over a period of three to four years. The Company recognizes compensation expense for awards that contain only service conditions on a straight-line basis over the requisite service period, which is generally the vesting period of the respective awards. The Company recognizes the compensation cost for awards that contain either performance conditions, market conditions, or both using the graded vesting method and a portion of the expense may fluctuate depending on changing estimates of the achievement of the performance conditions. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Company&#x2019;s stock options is estimated at the grant date using the Black-Scholes option-pricing model. Recently granted stock options are subject to time-based vesting, which generally occurs over a period of two years. The Company recognizes compensation expense for stock options that contain only service conditions on a straight-line basis over the requisite service period, which is generally the vesting period of the respective stock options. The inputs used in the Black-Scholes option-pricing model are subjective and generally requires significant judgment to determine.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected Term &#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 expected term represents the period that the stock-based awards are expected to be outstanding. The simplified method calculates the expected term as the average of the time-to-vesting and the contractual life of the options. The Company uses the simplified method to determine its expected term because of its limited history of stock option exercise activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected Volatility &#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 expected volatility is derived from the historical volatility of the Company&#x2019;s common stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Risk-Free Interest Rate &#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 risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for zero coupon U.S. Treasury notes with maturities approximately equal to the expected term of the options.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected Dividend &#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 expected dividend is zero, as the Company has never paid dividends and has no expectations to do so.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Company&#x2019;s TSR PSUs is estimated at the grant date using a Monte Carlo simulation method. The assumptions utilized under this method requires judgments and estimates and changes in these inputs and assumptions could affect the measurement of the estimated fair value of the related compensation expense. Compensation expense associated with TSR PSUs will be recognized over the vesting period regardless of whether the market condition is ultimately satisfied; however, the expense will be reversed if a grantee terminates prior to satisfying the requisite service period. For TSR PSUs containing an additional performance condition, a portion of the expense may fluctuate depending on estimates of the achievement of the performance conditions.&#160;All TSR PSUs will vest at the end of a three-year period.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMzQ4NjM_2b89a530-fc5c-4162-8d27-0beae2dcc4a4">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ic609b76953cb4d2e9fc3c2c8a03d0a81_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNTU_c4e7dd9a-ef10-4570-bf37-474917ec3cf6">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzMzg_2331c0a3-79ed-46fb-8eb3-21cbc6addd08">&lt;div style="margin-top:14pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Income taxes are accounted for under the asset and liability method. Under this method, the Company determines deferred tax assets and liabilities on the basis of the differences between the financial statement carrying amounts and tax basis of existing assets and liabilities by using enacted tax rates in effect for the year in which the differences are expected to reverse. All deferred tax assets and liabilities are classified as non-current on the Company&#x2019;s consolidated balance sheets. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance against deferred tax assets is recorded when it is more likely than not that some portion or all of such deferred tax assets will not be realized and is based on both positive and negative evidence about the future, including future reversals of existing taxable temporary differences, projected future taxable income, tax-planning strategies, and results of recent operations. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effective tax rate in any given financial statement period may differ materially from the statutory rate. These differences may be caused by changes in tax regulations and resulting changes in the deferred tax valuation allowance; changes in the mix and level of income or losses; changes in the expected outcome of tax audits; permanent differences for stock-based compensation, including excess tax benefits; research and development credits; the tax rate differences between the United States and foreign countries; foreign withholding taxes; certain non-deductible expenses, including executive compensation; acquisition-related expenses; and provisions under the Tax Cuts and Jobs Act of 2017 (the &#x201c;Tax Act&#x201d;), including a provision to tax global intangible low-taxed income of foreign subsidiaries, a special deduction for foreign-derived intangible income, and a base erosion anti-abuse tax that may tax certain payments between a U.S. corporation and its foreign subsidiaries. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records interest and penalties related to unrecognized tax benefits as income tax expense in its consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfNDIzNTc_d611b40a-6cd0-4d73-ae82-1a5268c9e8fb">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:174%"&gt;Recent Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Debt &#x2014; Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging &#x2014; Contracts in Entity&#x2019;s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity&#x2019;s Own Equity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2020, the FASB issued ASU No. 2020-06, &#x201c;Debt&lt;/span&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; &#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;Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging&lt;/span&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; &#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;Contracts in Entity&#x2019;s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity&#x2019;s Own Equity&#x201d;, which simplifies the accounting for convertible instruments by eliminating the requirement to separate embedded conversion features from the host contract when the conversion features are not required to be accounted for as derivatives under Topic 815, Derivatives and Hedging, or that do not result in substantial premiums accounted for as paid-in capital. By removing the separation model, a convertible debt instrument will be reported as a single liability instrument with no separate accounting for embedded conversion features. This new standard also removes certain settlement conditions that are required for contracts to qualify for equity classification and simplifies the diluted earnings per share calculations by requiring that an entity use the &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;if-converted method and that the effect of potential share settlement be included in diluted earnings per share calculations. The new standard will be effective and the Company will adopt it beginning August 1, 2022. The Company will adopt the standard on a modified retrospective basis and will not restate comparative periods. Upon adoption, the Company expects the requirement to use the if-converted method instead of the treasury stock method of accounting for the shares issuable upon conversion of the Convertible Senior Notes will most likely adversely affect diluted earnings per share. On the adoption date, the Company expects to record in the consolidated balance sheets an increase to Convertible Senior Notes, net of approximately $37&#160;million, a decrease to accumulated deficit of approximately $40&#160;million, a decrease to additional paid-in capital of approximately $68&#160;million, and a decrease to deferred tax liability of approximately $9&#160;million. Additionally, there will be an impact to the consolidated financial statements due to the removal of the equity component of the debt and the associated impact of such adjustment to the accretion of debt discount, which will result in a decrease in interest expense.&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:700;line-height:120%"&gt;Other Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other recent accounting pronouncements that will be applicable to the Company are not expected to have a material impact on its present or future financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:SeniorNotes
      contextRef="i60ad934a82d44c62ba1af77e2fc4c489_I20220801"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTgxNDE5NDE5MzE0Mjc_478269df-f252-4ba8-9ec3-ee3edd543d8b"
      unitRef="usd">37000000</us-gaap:SeniorNotes>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i60ad934a82d44c62ba1af77e2fc4c489_I20220801"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTgxNDE5NDE5MzE0NTQ_1251be0a-d007-433d-b369-4fbe4c50c63b"
      unitRef="usd">40000000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i60ad934a82d44c62ba1af77e2fc4c489_I20220801"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTgxNDE5NDE5MzE0NDE_3c4d2058-703b-4f92-83f2-3f0eae17c84b"
      unitRef="usd">-68000000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i60ad934a82d44c62ba1af77e2fc4c489_I20220801"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV85Ny9mcmFnOjZjZWZkMTllZTY2ZDQwYTg4MmJhNjFiMzJjM2RiOTQ5L3RleHRyZWdpb246NmNlZmQxOWVlNjZkNDBhODgyYmE2MWIzMmMzZGI5NDlfMTgxNDE5NDE5MzE0Njc_aa929e54-6dcf-431c-9c38-123d56612e16"
      unitRef="usd">-9000000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MjkzNzMx_859c610f-ef3a-44e3-bde4-29cb48fcba21">Revenue&lt;div style="margin-top:14pt;text-align:justify;text-indent:24.75pt"&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;Disaggregation of Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue by license or service type is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;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:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Subscription&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;259,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 19.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,709&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,815&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;License&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Term license&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;303,309&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;328,489&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Perpetual license&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;483&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;210,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;207,280&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;812,614&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;743,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;742,307&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue by revenue type and by geography is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.150%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.674%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.674%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.674%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.678%"/&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:10pt;font-weight:700;line-height:100%"&gt;Fiscal year ended July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;License&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;229,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;516,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,384&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;289,418&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;171,703&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;165,697&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;626,818&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,944&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,153&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,248&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118,419&#160;&lt;/span&gt;&lt;/td&gt;&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343,708&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,631&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;210,275&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;812,614&#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-bottom:8pt;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:41.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.794%"/&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:10pt;font-weight:700;line-height:100%"&gt;Fiscal year ended July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;License&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;167,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;180,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;123,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;472,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,143&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,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:10pt;font-weight:400;line-height:100%"&gt;4,651&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;207,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;211,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;142,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;561,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,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:10pt;font-weight:400;line-height:100%"&gt;32,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,449&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,574&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;89,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,907&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121,852&#160;&lt;/span&gt;&lt;/td&gt;&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,941&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;252,358&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;303,792&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,117&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;743,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;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:41.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.794%"/&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:10pt;font-weight:700;line-height:100%"&gt;Fiscal year ended 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 #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;License&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;139,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;174,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;149,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;462,539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,216&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,595&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,374&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,608&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,741&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;540,142&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,389&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;89,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,445&#160;&lt;/span&gt;&lt;/td&gt;&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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:10pt;font-weight:400;line-height:100%"&gt;13,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,473&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331,554&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;207,280&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;742,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No country or region other than those listed above accounted for more than 10% of revenue during the years ended July&#160;31, 2022, 2021, and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify;text-indent:24.75pt"&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;Customer Contract &#x2013; Related Balance Sheet Amounts&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts related to customer contract-related arrangements are included on the consolidated balance sheets as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unbilled accounts receivable, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103,422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract costs, 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:10pt;font-weight:400;line-height:100%"&gt;44,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Unbilled accounts receivable&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The unbilled accounts receivable, net decreased by $18.0&#160;million primarily due to the impact of term license arrangements of approximately $17.1&#160;million and, to a lesser extent, cloud subscription orders with ramped billing schedules.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;As of July&#160;31, 2022 and 2021, there was no allowance for credit losses associated with unbilled accounts receivable. During the year ended July&#160;31, 2022, $3.0&#160;million of unbilled accounts receivable, net was written off due to a contract termination as a result of United States government sanctions on Russia.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Contract costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The current portion of contract costs of $14.8&#160;million and $13.4&#160;million is included in prepaid and other current assets on the Company&#x2019;s consolidated balance sheets as of July&#160;31, 2022 and 2021, respectively. The non-current portion of contract costs of $29.4&#160;million and $28.9&#160;million is included in other assets on the Company&#x2019;s consolidated balance sheets as of July&#160;31, 2022 and 2021, respectively. The Company amortized $14.5&#160;million, $11.4&#160;million, and $9.9&#160;million of contract costs during the fiscal years ended July&#160;31, 2022, 2021, and 2020 respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the fiscal year ended July&#160;31, 2022, the Company recognized revenue of $137.7&#160;million related to the Company&#x2019;s deferred revenue balance reported as of July&#160;31, 2021. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Remaining Performance Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The aggregate amount of consideration allocated to remaining performance obligations either not satisfied or partially satisfied, was approximately $1,124.0&#160;million as of July&#160;31, 2022. Subscription services are typically satisfied over three to five years, support services are generally satisfied within one year, and professional services are typically satisfied within one year. Professional services under time and material contracts are not included in the remaining performance obligations calculation as these arrangements can be cancelled at any time.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MjkzNzMy_a6ef7156-5601-47d7-9a11-4c5208c94db3">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue by license or service type is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;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:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Subscription&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;259,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 19.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,709&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,815&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;License&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Term license&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,440&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;303,309&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;328,489&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Perpetual license&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;483&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;210,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;207,280&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;812,614&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;743,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;742,307&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue by revenue type and by geography is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.150%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.674%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.674%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.674%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.678%"/&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:10pt;font-weight:700;line-height:100%"&gt;Fiscal year ended July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;License&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;229,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;516,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,384&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;289,418&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;171,703&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;165,697&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;626,818&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,944&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,153&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,248&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118,419&#160;&lt;/span&gt;&lt;/td&gt;&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343,708&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,631&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;210,275&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;812,614&#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-bottom:8pt;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:41.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.794%"/&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:10pt;font-weight:700;line-height:100%"&gt;Fiscal year ended July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;License&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;167,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;180,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;123,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;472,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,143&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,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:10pt;font-weight:400;line-height:100%"&gt;4,651&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;207,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;211,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;142,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;561,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,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:10pt;font-weight:400;line-height:100%"&gt;32,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,449&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,574&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;89,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,907&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121,852&#160;&lt;/span&gt;&lt;/td&gt;&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,941&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;252,358&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;303,792&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,117&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;743,267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;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:41.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.794%"/&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:10pt;font-weight:700;line-height:100%"&gt;Fiscal year ended 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 #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Subscription and support&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;License&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;139,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;174,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;149,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;462,539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canada&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,216&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,595&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,374&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,608&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,741&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;540,142&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United Kingdom&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,389&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;89,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,445&#160;&lt;/span&gt;&lt;/td&gt;&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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:10pt;font-weight:400;line-height:100%"&gt;13,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,473&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331,554&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;207,280&#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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;742,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieb6623b33ddb4e9db3a549025c00d172_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzMtMS0xLTEtOTkxNzg_ad61b473-0d51-4841-825a-05f47d8daef5"
      unitRef="usd">259232000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i880ec838339342d696740077ad14a819_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzMtMy0xLTEtOTkxNzg_9b68c797-9e3f-4853-b46f-7ed4435adefb"
      unitRef="usd">168649000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib0fe1f607343457bb656f40f4a6bb17e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzMtNS0xLTEtOTkxNzg_1e027a97-081e-48d3-a1fc-31bb3554e1d9"
      unitRef="usd">119658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9a5ae6f908e54ea590cba92dd6f3c1a3_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzQtMS0xLTEtOTkxNzg_76287db2-3d4d-431d-a28c-9c924f634cfc"
      unitRef="usd">84476000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0e61945d57e94287aeab0c24807f81ea_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzQtMy0xLTEtOTkxNzg_745e7a30-3a34-48e1-878e-4d7ac12b8c88"
      unitRef="usd">83709000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7eae556657594eafb9a403b2c07be6e0_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzQtNS0xLTEtOTkxNzg_17dda040-31b8-4d1d-99ed-6322d3e2d5ee"
      unitRef="usd">83815000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i21cdb76ec03247c085e4bd2a2ba7cd51_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzYtMS0xLTEtOTkxNzg_c5d5e59f-8abc-4b96-8cbb-a542463ffe7d"
      unitRef="usd">258440000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7c54a1f332f3447ca591adc14dbf5308_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzYtMy0xLTEtOTkxNzg_5986a9af-3807-44dd-81cc-908844328781"
      unitRef="usd">303309000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic332ba0aae2b42abad14b4939d16a801_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzYtNS0xLTEtOTkxNzg_da667923-d850-44ab-b63e-ee9f225aea50"
      unitRef="usd">328489000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6f4f078f36c84f0aae6044de513b1d4c_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzctMS0xLTEtOTkxNzg_42a7f4d3-5e24-46ed-93e4-b31c901baa6e"
      unitRef="usd">191000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1eae7173f6dd4586856e2dec8f71a8fc_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzctMy0xLTEtOTkxNzg_863963b5-f34b-4931-bc9b-36b9633d8114"
      unitRef="usd">483000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if445cb81288449e78f8c326d3aedb6eb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzctNS0xLTEtOTkxNzg_4c121622-266f-45dd-86ec-f2cdbe77beb7"
      unitRef="usd">3065000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i32974e5d7d944b538914d4f6be8b5b0e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzgtMS0xLTEtOTkxNzg_fba2f59e-e7ea-40b7-8cc9-175b91c4a57f"
      unitRef="usd">210275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6929d8b010564fe78e0d072352211ab5_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzgtMy0xLTEtOTkxNzg_38021491-fa71-4898-b521-5b44ee9e5804"
      unitRef="usd">187117000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if4509243db0d471a9c3d916e035fc2b9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzgtNS0xLTEtOTkxNzg_def08594-646d-4b39-aeca-c70fed538d4b"
      unitRef="usd">207280000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzktMS0xLTEtMTE2NjAw_ba46c852-3cc0-462b-8cea-e1468e94e680"
      unitRef="usd">812614000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzktMy0xLTEtMTE2NjAw_74a34f29-c6fc-4edb-9188-f484aac2f41c"
      unitRef="usd">743267000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo5MDBhN2VlMzgyODQ0MzMxODY4Mzk3MmQ1ZGVkZjI0NS90YWJsZXJhbmdlOjkwMGE3ZWUzODI4NDQzMzE4NjgzOTcyZDVkZWRmMjQ1XzktNS0xLTEtMTE2NjAw_68252cde-5dae-4a61-8135-86bab49a7098"
      unitRef="usd">742307000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0a40fe9bab394e47bbed84455d8f9596_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzMtMS0xLTEtOTkxNzg_5e1c3867-173c-484f-8119-e349823f624d"
      unitRef="usd">229177000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib5fa334612774311849133de5c88c0c4_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzMtMi0xLTEtOTkxNzg_788a81be-e721-43c3-b3f1-ee19ee499259"
      unitRef="usd">151464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id9b5fd945ffb4fa9a1e1aad167909de4_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzMtMy0xLTEtOTkxNzg_fd75c928-138b-4f3b-8a57-971e85f702f3"
      unitRef="usd">135783000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie87287d2e79e44ceae622e107dcb3777_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzMtNC0xLTEtMTEwNzI5_41df75e1-f564-49ee-a2f9-d347d0766615"
      unitRef="usd">516424000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8e6a9e478582463b9a3e52a1bd8f0bf7_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzQtMS0xLTEtOTkxNzg_88c915f8-df9c-42b2-9527-6ea3293adc8e"
      unitRef="usd">55633000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0a9f9322c6a14f0589a82496bbbd00b3_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzQtMi0xLTEtOTkxNzg_91e3cdad-3fad-42a6-a43f-cad9a1dfed2c"
      unitRef="usd">17145000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3bf1ee3bcefb4c82a058519feb94236d_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzQtMy0xLTEtOTkxNzg_26d48418-1b20-43c1-8196-6d309621cc36"
      unitRef="usd">27232000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i90e9b64e981a488babca97ee637ac872_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzQtNC0xLTEtMTE2NjEw_9056a3f2-5e86-458a-b40b-a96b2210f1c8"
      unitRef="usd">100010000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i38126977f36e48b19a2b176fff40fc19_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzUtMS0xLTEtOTkxNzg_ad61cf7a-54d4-42b6-9a92-451d0d070afc"
      unitRef="usd">4608000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iab5b4dd1526245359fcffe42cce1d106_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzUtMi0xLTEtOTkxNzg_909bd32b-f765-4b33-87ff-d4066aea8ee0"
      unitRef="usd">3094000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2d71eb39797846898923eccbbc60df6b_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzUtMy0xLTEtOTkxNzg_94018353-6606-4dfd-8500-2251b019cc15"
      unitRef="usd">2682000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i413d6c3159d941168e0d2f5ecd0306bd_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzUtNC0xLTEtMTE2NjEw_0776b56e-7fa3-4cc4-a5aa-ccf95236825e"
      unitRef="usd">10384000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaffa67f6c0bc4d4183c79ef5c0a0bd3d_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzYtMS0xLTEtMTE2NjA0_5ffa9cea-2ce5-4f00-ba78-573bf408bbe0"
      unitRef="usd">289418000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7eeb130ee6534822aa08a468d253891b_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzYtMi0xLTEtMTE2NjA2_3b4967b9-6110-4e40-84d1-5a3dc97da546"
      unitRef="usd">171703000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i035164729c7a465e899e66a6b3740daa_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzYtMy0xLTEtMTE2NjA4_b8aa3867-d935-4182-9e0a-6dd02f88847c"
      unitRef="usd">165697000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i97b1aaf366a84b11852fc7bc8e70f185_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzYtNC0xLTEtMTExNjU0_127d10d9-b714-4e77-99b1-ea87f1e95e2b"
      unitRef="usd">626818000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if337e9d92b044da7996c776920941e42_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzctMS0xLTEtOTkxNzg_769ae5ca-f17c-4fcf-9615-449365052ced"
      unitRef="usd">9421000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icddee4cc6f144ece9cdd4b10f30810d7_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzctMi0xLTEtOTkxNzg_97ca132d-01e1-4f86-82d5-f520dd9521b1"
      unitRef="usd">20740000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i33e138c76f6f46a2a275b87f308c13a2_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzctMy0xLTEtOTkxNzg_e14e7c7b-c40f-4522-ac42-9543b0f93aa5"
      unitRef="usd">4074000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia2d2dff4ea5a4700b6aa6047170dc3de_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzctNC0xLTEtMTE2NjEw_f26496af-a869-4a00-98f9-ff322adaf631"
      unitRef="usd">34235000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5ce5adeaa761445599ba5ecb60e21127_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzgtMS0xLTEtOTkxNzg_d9322311-3330-4762-88fc-62fc4b6e4b60"
      unitRef="usd">22732000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1cd5482702334372952fcbe2fc8e4805_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzgtMi0xLTEtOTkxNzg_1cee990d-3a15-4989-b260-b7849ec76c39"
      unitRef="usd">32508000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie2b087355ea24f488a03cb1c4080fff1_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzgtMy0xLTEtOTkxNzg_3e1c5a32-df4b-4bb9-9e21-89ff8d0a2deb"
      unitRef="usd">28944000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i986740f6bb3243bf92df75839759cc7d_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzgtNC0xLTEtMTE2NjEw_ed7330cd-70eb-45b0-8b4e-35ab57536a99"
      unitRef="usd">84184000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ief2820fd34c84304bdd21efd7a93e1d0_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzktMS0xLTEtMTE2NjA0_26d284ca-7624-4aa3-adc7-2d5ee98784ce"
      unitRef="usd">32153000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i977f4f1f19824fab9f3ba3423fa19f26_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzktMi0xLTEtMTE2NjA2_36726cf2-cf65-4ef7-a179-e5226f97fabb"
      unitRef="usd">53248000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie835066d2af048499054c88e5367e35c_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzktMy0xLTEtMTE2NjA4_00480c80-9135-41e4-ae0a-7227de9a8b70"
      unitRef="usd">33018000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib85d156cf1b7459c94f8ac89bac4994c_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzktNC0xLTEtMTE2NjEw_451b757a-02a4-45cb-bb8a-0d18dcbe393e"
      unitRef="usd">118419000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i583384f71f7d41beb97f348ec2f51631_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzEwLTEtMS0xLTk5MTc4_e06ca648-6f09-4ff3-a5af-2a3d55d3ab70"
      unitRef="usd">22137000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic7ff094d322447b4a63e04824394bc89_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzEwLTItMS0xLTk5MTc4_0e88b27e-ee66-46dc-8a91-f1ccc0346e36"
      unitRef="usd">33680000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1012a23ddc8d4acd83d3cc58d31b43e3_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzEwLTMtMS0xLTk5MTc4_51b5f1fb-9369-474c-9744-e5a36bb60eaa"
      unitRef="usd">11560000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8c93381d3e5244fda805d6f1c2f1b57f_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzEwLTQtMS0xLTExNjYxMA_c1745d3f-57f1-4acd-8e2a-38033cde1453"
      unitRef="usd">67377000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic41cab7815da4fecbc7503a51b657371_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzExLTEtMS0xLTExNjYwNA_0a0b56a3-61a6-44f7-8a89-b5766274d7de"
      unitRef="usd">343708000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ica6488de9ffa49dc95c1cd529dce7fa5_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzExLTItMS0xLTExNjYwNg_7299ff06-1133-4872-b8a2-44549313f3b0"
      unitRef="usd">258631000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i32974e5d7d944b538914d4f6be8b5b0e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzExLTMtMS0xLTExNjYwOA_fa3d7b7f-68b4-44ce-acca-55fa46cb0c9a"
      unitRef="usd">210275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowYTNmMmRiNTA5YTk0MjgwOTk5OGFmNzVmOTM3OWUwZC90YWJsZXJhbmdlOjBhM2YyZGI1MDlhOTQyODA5OTk4YWY3NWY5Mzc5ZTBkXzExLTQtMS0xLTExNjYxMA_13a0f9f3-a56a-4a17-a9de-11acc060cc65"
      unitRef="usd">812614000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i77e55d319f8c491eb3799d6d4e66a145_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzMtMS0xLTEtOTkxNzg_07dc1933-7f90-4ffc-8540-b4c1dbb18c76"
      unitRef="usd">167920000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idebfdb2059974497bca2c03a83c61f14_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzMtMi0xLTEtOTkxNzg_c4532526-0d29-4de8-a48e-1a4c0714644f"
      unitRef="usd">180742000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9bcc2d2982714ca09afa86556cec042f_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzMtMy0xLTEtOTkxNzg_56d2c755-388e-4ed5-8c2d-5c33b8e9b63f"
      unitRef="usd">123498000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia2ead094c1734a07868843183f22e3a6_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzMtNC0xLTEtMTE2NjEz_d9b48b4b-7f80-4b54-bbef-2212258697ec"
      unitRef="usd">472160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i37c0808451f64a4cb28146ab4aa24df2_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzQtMS0xLTEtOTkxNzg_005f2bc9-39cf-482d-ae51-8fc0b4f0e459"
      unitRef="usd">35465000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6688fd6222c24c8985cab771f1d20a8e_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzQtMi0xLTEtOTkxNzg_5f92ff8f-8acc-466c-9afa-fa9bc08a978e"
      unitRef="usd">26214000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib57f8d49195b4e4d85f93fd74e7b3993_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzQtMy0xLTEtOTkxNzg_5e9f78a1-749f-461f-a453-6dcf3902d0e0"
      unitRef="usd">13464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0d480a0bcc82442894bb187d93f05bbe_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzQtNC0xLTEtMTE2NjEz_980595c5-37ca-42bb-b962-17e5ace87f51"
      unitRef="usd">75143000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i24a3ee8ce31b48da98239b7357b0be85_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzUtMS0xLTEtOTkxNzg_ccabd438-210f-4442-b554-9807a9c4ec10"
      unitRef="usd">4234000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i598cce2fe22944e39175541e26ed2ec3_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzUtMi0xLTEtOTkxNzg_3429acf5-8b4b-4f15-b8f1-67756116b070"
      unitRef="usd">4651000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i58f7ef58b0154f8fafecb32649260119_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzUtMy0xLTEtOTkxNzg_67c8cc67-7bcd-4e9c-b02d-049e25f84860"
      unitRef="usd">5307000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i927b739003fd495d83e6c199e14b12ab_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzUtNC0xLTEtMTE2NjEz_c916b387-c914-44c0-988a-7e7c155d2c2d"
      unitRef="usd">14192000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i66a90d9b370e4160850519ae1734e5c5_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzYtMS0xLTEtMTE2NjEz_695bbac3-59c2-443e-a493-87464de0cd50"
      unitRef="usd">207619000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5f9180a9af2e4cd198661b9277cb8ea9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzYtMi0xLTEtMTE2NjEz_b039a423-ebf7-4a04-ae3e-682d8b2ee737"
      unitRef="usd">211607000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6a2876187d6345c58698d26a6c3e8a1a_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzYtMy0xLTEtMTE2NjEz_ac726307-6855-4dd1-9bd0-9c5a0c7a7287"
      unitRef="usd">142269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia547cd6ff7c04594b51cbcaace1f1618_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzYtNC0xLTEtMTE2NjEz_7c48630a-2793-4aaa-82fa-ec5589409ca7"
      unitRef="usd">561495000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i95cab5d2c6dd4ac696bc757d7657704d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzctMS0xLTEtOTkxNzg_2da17818-5556-419d-b50e-9fc95fa98ced"
      unitRef="usd">6911000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0a3077d932424b92a02330b404245f2d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzctMi0xLTEtOTkxNzg_c644b984-d242-439a-ae1e-c712ba3c18da"
      unitRef="usd">21032000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i29b82646eb034f958447c10ed7272928_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzctMy0xLTEtOTkxNzg_368cd294-267c-45fb-86fd-a013e68ad345"
      unitRef="usd">4333000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i86f0b640b05745cbb2015e8646b963f6_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzctNC0xLTEtMTE2NjEz_e70c98b4-1900-4693-82de-3f8a19f1f21e"
      unitRef="usd">32276000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1b73a41892644fb2991072959b8c8dcb_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzgtMS0xLTEtOTkxNzg_c1aaf55a-4445-4641-ba09-585f4fadf285"
      unitRef="usd">20449000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iee4d7e730c2941bc847f708e4c745712_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzgtMi0xLTEtOTkxNzg_5dc242ed-38af-4323-96ee-f670d1b10ae2"
      unitRef="usd">39553000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia40c929b47dc4de58c26880423f32492_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzgtMy0xLTEtOTkxNzg_67190246-d163-4aee-9cc6-ce49887a187b"
      unitRef="usd">29574000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i191c3d5759f940caabd619081bd2e834_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzgtNC0xLTEtMTE2NjEz_2858ff73-8f89-4760-ae83-db0632a70680"
      unitRef="usd">89576000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4221393b980345e5814b0c3a793b3c9b_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzktMS0xLTEtMTE2NjEz_4736f126-60fa-4ff2-a7eb-54369750bf97"
      unitRef="usd">27360000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i601a2793cdd34f6591221cab512c3055_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzktMi0xLTEtMTE2NjEz_d26decd0-8853-43e8-8715-9114b2fa878d"
      unitRef="usd">60585000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icb3abb38682f4bad8d077e2f12b53fc1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzktMy0xLTEtMTE2NjEz_f65990f8-c672-42f5-af90-aebd1fb03f17"
      unitRef="usd">33907000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib943c6a8e65440e9ba50b0e563a59bab_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzktNC0xLTEtMTE2NjEz_251aa316-b76e-4f6a-9410-a1d2575f752f"
      unitRef="usd">121852000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i61a9ca9088ff46359ea6f365857d742a_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzEwLTEtMS0xLTk5MTc4_98fefc98-f07d-4e25-ba84-d34f98f54d60"
      unitRef="usd">17379000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i511ee6a427294d0ca24028e4d4d81608_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzEwLTItMS0xLTk5MTc4_325d7994-70a0-4e15-a8c7-1e23e585b220"
      unitRef="usd">31600000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i712f58223e214ec288b422470cfaa4e1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzEwLTMtMS0xLTk5MTc4_452df23e-f728-4be9-9d65-02b807167718"
      unitRef="usd">10941000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i507ada90fd6f44dfbc2b15c2d7c9ede7_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzEwLTQtMS0xLTExNjYxMw_d6115e01-464d-4b65-97fb-5da1e7bf8aa8"
      unitRef="usd">59920000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i46144352023644c7bef44662217ca0b1_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzExLTEtMS0xLTExNjYxMw_6484333e-02c3-4389-8889-0b1b9a1119ea"
      unitRef="usd">252358000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaf63f09bdab243779942deb891570dd4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzExLTItMS0xLTExNjYxMw_e39ee846-0293-48cb-a879-98fcb7d4628e"
      unitRef="usd">303792000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6929d8b010564fe78e0d072352211ab5_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzExLTMtMS0xLTExNjYxMw_62bf8fae-3dbf-4477-a32a-ac878db3e77b"
      unitRef="usd">187117000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTowN2U0MTZjYzc0Zjc0NjA1YjBhZmM3OTk1MWIwODcxZC90YWJsZXJhbmdlOjA3ZTQxNmNjNzRmNzQ2MDViMGFmYzc5OTUxYjA4NzFkXzExLTQtMS0xLTExNjYxMw_5a422ce2-d139-4164-9b3d-1eb21b28e7d9"
      unitRef="usd">743267000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia32e3930011c4cf19bb89935494b1f81_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzMtMS0xLTEtOTkxNzg_5065ca43-01a7-499f-879e-20e98f7b47d7"
      unitRef="usd">139059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibc1275d4859e4102b507ad24bb2393d1_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzMtMi0xLTEtOTkxNzg_e7273dee-a5c8-4a91-9065-e05ecf57e06b"
      unitRef="usd">174183000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i973b245b3cfe48e68afdd71de6abe2e4_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzMtMy0xLTEtOTkxNzg_29243ba4-144f-40c9-ab52-5f8ac27f9c07"
      unitRef="usd">149297000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id66c30d8cfeb480ea673012c5ba0f2e8_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzMtNC0xLTEtMTE2NjE2_b6ff0ded-7f3b-4164-bbc2-d3f575a09d0b"
      unitRef="usd">462539000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibc133adb6f174946ab54e8a111f0c92b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzQtMS0xLTEtOTkxNzg_cbafab4a-1afe-4187-9d5a-6ef7915e7b75"
      unitRef="usd">18216000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia99cca87088a47c982280145654cba10_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzQtMi0xLTEtOTkxNzg_d7b1ade9-9861-430e-a17e-ea9700779248"
      unitRef="usd">36184000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4df3d8c5ca664946ba285a6d86131661_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzQtMy0xLTEtOTkxNzg_32e18118-35ac-47cc-9af0-a7e2e6e1bc89"
      unitRef="usd">4595000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8f030a4387454ab5b7958411fade939e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzQtNC0xLTEtMTE2NjE2_ac172eb2-56f7-4bf7-8954-7370a35a8d90"
      unitRef="usd">58995000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iff80cd1f215d48668c457d45c53aa5a9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzUtMS0xLTEtOTkxNzg_ebb3f8a4-ec18-4b6b-a316-eb0fe572e750"
      unitRef="usd">4454000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia1ca63914c244c57bc24a126df8ae9cf_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzUtMi0xLTEtOTkxNzg_ff57aa6f-33b1-4caa-8f41-8ac143abfc05"
      unitRef="usd">6374000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i415a35b645e248499307e5976c8d99b6_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzUtMy0xLTEtOTkxNzg_57e529f2-3a11-4eb5-b9ab-ccfc4195aa58"
      unitRef="usd">7780000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4aff8cd067a44a3397712ee38849529f_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzUtNC0xLTEtMTE2NjE2_eee43367-bc37-45ba-8b50-76155e200a0e"
      unitRef="usd">18608000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifead6ef7f64f45ff8d325ca0233baded_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzYtMS0xLTEtMTE2NjE2_4906179a-324b-4f67-914e-9ebb394a6345"
      unitRef="usd">161729000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id6f243b3c4384b16ae21fb85f88cc80c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzYtMi0xLTEtMTE2NjE2_77bb713f-5978-4c09-ba59-04fcb095f41d"
      unitRef="usd">216741000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7941f97f32e74453b86013d6c362e0dd_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzYtMy0xLTEtMTE2NjE2_2dc4cf13-d849-4315-88bb-4f0bd130ca46"
      unitRef="usd">161672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6132620b6f9948cb8e732a51681ee134_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzYtNC0xLTEtMTE2NjE2_b73a0a91-9aa0-43c7-8671-67782ef5dbc7"
      unitRef="usd">540142000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iabe3c3f571ad4ebd83e34b34679fb81e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzctMS0xLTEtOTkxNzg_c8b61999-cf33-41b5-863d-6eee835b9741"
      unitRef="usd">6942000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i36d99f1ed3ac4447b149abe79eee29cf_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzctMi0xLTEtOTkxNzg_3b1a7460-bc61-43b9-9af6-1823da6bab18"
      unitRef="usd">36185000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i93e9abc73ab44be9aceffd424298356b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzctMy0xLTEtOTkxNzg_c3863bbe-a8fe-46b6-b96d-642e09ed75ea"
      unitRef="usd">5397000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie47a7da843db47ce894df601af34cd82_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzctNC0xLTEtMTE2NjE2_8c4a4f48-11ca-4ff4-a15e-be9114ba4b34"
      unitRef="usd">48524000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idbe33f20b5b74ddebb0ae9d8257e7388_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzgtMS0xLTEtOTkxNzg_0150d0e6-5da3-419c-9027-0d231ef3157b"
      unitRef="usd">19544000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8d8435aa5aa84f31b7c0f07ec59f84d7_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzgtMi0xLTEtOTkxNzg_f4627925-92c1-47a2-9a26-7480e5e64cd8"
      unitRef="usd">43988000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia172d668549b4a03bb9b7980e1d67eb7_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzgtMy0xLTEtOTkxNzg_d2dfa521-07f6-4184-ba2a-dc403ae50b30"
      unitRef="usd">26389000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i70904a894b9749dd96eeae758c748cbf_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzgtNC0xLTEtMTE2NjE2_1ac19998-f7d5-425b-8291-2cbd58598bfa"
      unitRef="usd">89921000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i21e9700374694eb5a9a4db332466f684_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzktMS0xLTEtMTE2NjE2_7e9b1163-3f68-42aa-83c0-faec93fc3a60"
      unitRef="usd">26486000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i95c8ffc2b45a44358e644ddd323798f6_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzktMi0xLTEtMTE2NjE2_1f3988cd-6217-4a9f-9cf0-2581c4c1e059"
      unitRef="usd">80173000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i57a05629755d4ff880d282df2863b93a_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzktMy0xLTEtMTE2NjE2_aa5337cf-9741-4233-bfb2-5acd099ff05b"
      unitRef="usd">31786000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0fa6091aaac0455eb9d50f4cd20915a0_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzktNC0xLTEtMTE2NjE2_c9b74035-b465-4315-9e23-b706ce60c3bc"
      unitRef="usd">138445000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7a304d0e576a492d9942e4ce81560dea_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzEwLTEtMS0xLTk5MTc4_481dfcce-53c5-4cca-a8a4-346debf5a0d5"
      unitRef="usd">15258000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib7406eda581d4ab5b8e6bcd1a7301cf6_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzEwLTItMS0xLTk5MTc4_3bfe6bda-32ae-4e35-b5fe-74857caf1f12"
      unitRef="usd">34640000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic631934413e74109b39991af7f0dd9a9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzEwLTMtMS0xLTk5MTc4_32ddd0d4-8933-411b-86bb-917767d9d7af"
      unitRef="usd">13822000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ieb161fb8fea44235bb71b4b1d49c81dc_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzEwLTQtMS0xLTExNjYxNg_6aacee24-7b2b-42e3-9256-f8f7e185ab1a"
      unitRef="usd">63720000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7b7834783fb642c4868f4c9d80caedbb_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzExLTEtMS0xLTExNjYxNg_963b4989-166e-42f5-ad37-7cc642c51980"
      unitRef="usd">203473000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6b37bf3bc9a54fdeb32d4acbeb1a550e_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzExLTItMS0xLTExNjYxNg_94c5cf5a-3e12-4db7-befc-de455b7236cf"
      unitRef="usd">331554000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if4509243db0d471a9c3d916e035fc2b9_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzExLTMtMS0xLTExNjYxNg_0de504c7-840f-40e9-8638-8f0d4c090749"
      unitRef="usd">207280000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo1NjYxNWUzOWQ0ODI0YjY0OTA3OTk0MDdlMjQ4ODhlMy90YWJsZXJhbmdlOjU2NjE1ZTM5ZDQ4MjRiNjQ5MDc5OTQwN2UyNDg4OGUzXzExLTQtMS0xLTExNjYxNg_d6f6dfb9-6073-49db-90d3-404a39de62c7"
      unitRef="usd">742307000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MjkzNzMz_013c51b3-ceeb-477c-88f0-6a24f6c416c6">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts related to customer contract-related arrangements are included on the consolidated balance sheets as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unbilled accounts receivable, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103,422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract costs, 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:10pt;font-weight:400;line-height:100%"&gt;44,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo0MzE4MDEzMGZmYzk0YTAzODAzMDVlODE2NGQ0OTI2Ni90YWJsZXJhbmdlOjQzMTgwMTMwZmZjOTRhMDM4MDMwNWU4MTY0ZDQ5MjY2XzEtMS0xLTEtOTkxNzg_2a69ca75-473b-493d-9971-f9d02458ccab"
      unitRef="usd">85429000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo0MzE4MDEzMGZmYzk0YTAzODAzMDVlODE2NGQ0OTI2Ni90YWJsZXJhbmdlOjQzMTgwMTMwZmZjOTRhMDM4MDMwNWU4MTY0ZDQ5MjY2XzEtMy0xLTEtOTkxNzg_a5a69943-422b-45d3-9628-9e40c4a11200"
      unitRef="usd">103422000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo0MzE4MDEzMGZmYzk0YTAzODAzMDVlODE2NGQ0OTI2Ni90YWJsZXJhbmdlOjQzMTgwMTMwZmZjOTRhMDM4MDMwNWU4MTY0ZDQ5MjY2XzItMS0xLTEtOTkxNzg_df373a70-4933-492a-bd4d-a14a98e757f3"
      unitRef="usd">44235000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo0MzE4MDEzMGZmYzk0YTAzODAzMDVlODE2NGQ0OTI2Ni90YWJsZXJhbmdlOjQzMTgwMTMwZmZjOTRhMDM4MDMwNWU4MTY0ZDQ5MjY2XzItMy0xLTEtOTkxNzg_e32a70a5-d176-4da4-a033-bb306664521a"
      unitRef="usd">42235000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo0MzE4MDEzMGZmYzk0YTAzODAzMDVlODE2NGQ0OTI2Ni90YWJsZXJhbmdlOjQzMTgwMTMwZmZjOTRhMDM4MDMwNWU4MTY0ZDQ5MjY2XzQtMS0xLTEtOTkxNzg_268921cb-a06e-4753-9d34-224252d70dd3"
      unitRef="usd">178276000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90YWJsZTo0MzE4MDEzMGZmYzk0YTAzODAzMDVlODE2NGQ0OTI2Ni90YWJsZXJhbmdlOjQzMTgwMTMwZmZjOTRhMDM4MDMwNWU4MTY0ZDQ5MjY2XzQtMy0xLTEtOTkxNzg_3a9b2a0e-e5e6-4ac4-af46-8512edafa149"
      unitRef="usd">145936000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInMeasureOfProgress
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MjkzNzM1_259553a8-13da-46bd-a808-c36b8c29c7ec"
      unitRef="usd">-18000000</us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInMeasureOfProgress>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="ie562d854fa874530a77846e9ed29e3ab_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2NDI0MzA_41ea7825-97c8-4b7a-93ad-82633612fc7d"
      unitRef="usd">17100000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzM3Mjk_08c7307f-4948-4c64-b69f-1fc9f659f80e"
      unitRef="usd">0</us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss>
    <us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzM3Mjk_c58a74ad-fcdb-42ad-920f-0bd5f0decc95"
      unitRef="usd">0</us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss>
    <us-gaap:ContractWithCustomerAssetAllowanceForCreditLossWriteoff
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzIxOTkwMjMyNjg1NjQ_c0840ee8-9e11-4f21-94a6-58e9e25e4721"
      unitRef="usd">3000000</us-gaap:ContractWithCustomerAssetAllowanceForCreditLossWriteoff>
    <us-gaap:CapitalizedContractCostNetCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzM4NjM_4d894833-ad05-4857-9d5c-40e6a1483acd"
      unitRef="usd">14800000</us-gaap:CapitalizedContractCostNetCurrent>
    <us-gaap:CapitalizedContractCostNetCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzM4NzE_7e054f73-2d1d-4373-ba62-96ac44d62c21"
      unitRef="usd">13400000</us-gaap:CapitalizedContractCostNetCurrent>
    <us-gaap:CapitalizedContractCostNetNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzQwNDY_ec53d76d-fe6b-4e54-bb31-0cfd1c8f2ed0"
      unitRef="usd">29400000</us-gaap:CapitalizedContractCostNetNoncurrent>
    <us-gaap:CapitalizedContractCostNetNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzQwNTQ_951bd7b8-a307-4241-a870-c5f603833c9c"
      unitRef="usd">28900000</us-gaap:CapitalizedContractCostNetNoncurrent>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzQxNzI_f6f2913e-7747-4b3a-8faf-8e29fd2c94f2"
      unitRef="usd">14500000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzQxODA_c8bd465e-1ec5-42ce-bf40-560653962eb0"
      unitRef="usd">11400000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzU0OTc1NTgyNzYxNQ_18f4e1e2-084b-494c-b3e8-b8b9d621ea18"
      unitRef="usd">9900000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzQzNDM_344688bb-5dde-43a4-aecc-78b00a50ee80"
      unitRef="usd">137700000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDMvZnJhZzphYTExZDg2YjNjYTM0MGQ5ODg2NTE3N2NjMmYyZjRjNS90ZXh0cmVnaW9uOmFhMTFkODZiM2NhMzQwZDk4ODY1MTc3Y2MyZjJmNGM1XzEwOTk1MTE2MzQ1ODA_6edffdaa-c0af-4044-8773-56a9d6f96934"
      unitRef="usd">1124000000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90ZXh0cmVnaW9uOjQ2OTYxZjFiZjMwYTQ4NTk5MDliZjIxZTgwYzAxMjE2XzI2ODU_75ffba43-3184-4724-8b51-946877075a24">Fair Value of Financial Instruments&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Available-for-sale investments within cash equivalents and investments consist of the following (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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, 2022&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;Amortized Cost&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;Unrealized Gains&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;Unrealized Losses&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;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,572&#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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(586)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,986&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&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:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;320,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,880)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;315,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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,312)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,702&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(611)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(361)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,066,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,058,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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;/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;Amortized Cost&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;Unrealized Gains&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;Unrealized Losses&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;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,165&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,180&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&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:10pt;font-weight:400;line-height:100%"&gt;389,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;389,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;371,374&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;371,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,925&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,947&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Strategic convertible debt investment*&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,201,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;739&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(47)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,202,624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;*At original cost&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&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 does not consider any portion of the unrealized losses at July&#160;31, 2022 to be credit losses. The Company has recorded the securities at fair value in its consolidated balance sheets, with unrealized gains and losses reported as a component of accumulated other comprehensive income (loss). The amount of unrealized gains and losses reclassified into earnings are based on the specific identification of the securities sold. The realized gains and losses from sales of securities are presented in the consolidated statements of comprehensive income (loss). &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the contractual maturities of the Company&#x2019;s available-for-sale investments measured at fair value (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&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;Less Than 12 Months&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;12 months or greater&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;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;315,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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,702&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;871,112&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,507&#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;border-bottom:3pt double #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,058,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:8.5pt;text-indent:24.75pt"&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;Fair Value Measurement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is defined as the exchange price that would be received for an asset or an exit price paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date. Valuation techniques used to measure fair value must maximize the use of observable inputs and minimize the use of unobservable inputs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies the three-level valuation hierarchy when measuring the fair value of certain assets and liabilities:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:31.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 1&#x2014;Unadjusted quoted prices in active markets for identical assets or liabilities;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:31.5pt;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;Level 2&#x2014;Inputs other than quoted prices included within Level 1 that are observable, unadjusted quoted prices in markets that are not active, or other inputs that are observable or can be corroborated by observable market data; and&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:31.5pt;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;Level 3&#x2014;Unobservable inputs that are supported by little or no market activity, which require the Company to develop its own assumptions. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Available-for-sale investments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables summarize the Company&#x2019;s available-for-sale investments measured at fair value, by level within the fair value hierarchy (in thousands):  &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:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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, 2022&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&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: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&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Cash equivalents:&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency 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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;132,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;132,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,755&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;501,247&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Short-term investments:&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,932&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,700&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total short-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;369,865&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;369,865&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Long-term investments:&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,273&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,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 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total long-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,507&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,507&#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 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;709,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,058,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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;/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:9pt;font-weight:700;line-height:100%"&gt;Level 1&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;Level 2&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;Level 3&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Cash equivalents:&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 #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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,825&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240,943&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Short-term investments:&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;274,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;274,012&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,320&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,353&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,750&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Strategic convertible debt investment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total short-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;733,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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:10pt;font-weight:400;line-height:100%"&gt;734,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Long-term investments:&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,142&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,142&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,832&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total long-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227,163&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227,163&#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 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,076,506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,202,624&#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="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Convertible Senior Notes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the Convertible Senior Notes was $387.6 million and $452.0 million at July&#160;31, 2022 and 2021, respectively. The Company estimates the fair value of the Convertible Senior Notes using commonly accepted valuation methodologies and market-based risk measurements that are directly observable, such as unadjusted quoted prices in markets that are not active (Level 2). The Company carries the Convertible Senior Notes at initial fair value less unamortized debt discount and issuance costs on its consolidated balance sheets. For further information on the Convertible Senior Notes, see Note 7.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90ZXh0cmVnaW9uOjQ2OTYxZjFiZjMwYTQ4NTk5MDliZjIxZTgwYzAxMjE2XzI2ODY_0ddc48be-c844-4255-9f3b-680e804de3b8">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Available-for-sale investments within cash equivalents and investments consist of the following (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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, 2022&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;Amortized Cost&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;Unrealized Gains&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;Unrealized Losses&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;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,572&#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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(586)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,986&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&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:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;320,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,880)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;315,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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,312)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,702&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(611)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(361)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,066,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,750)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,058,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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;/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;Amortized Cost&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;Unrealized Gains&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;Unrealized Losses&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;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,165&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,180&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&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:10pt;font-weight:400;line-height:100%"&gt;389,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;389,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;371,374&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;371,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,925&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47,947&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Strategic convertible debt investment*&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,201,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;739&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(47)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,202,624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;*At original cost&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzItMS0xLTEtOTU2NDI_030fa438-b338-4c52-b282-7a3d4c5b6ee4"
      unitRef="usd">37572000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzItMy0xLTEtOTU2NDI_8ea2a43f-b624-4de7-b09a-473ccccef201"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzItNS0xLTEtOTU2NDI_ad59dc26-8067-4493-bd7c-ebd4c2bda6c1"
      unitRef="usd">586000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzItNy0xLTEtOTU2NDI_94d24a12-9c01-46a9-8de1-9606e18c0672"
      unitRef="usd">36986000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzMtMS0xLTEtOTU2NDI_11af6615-8386-465e-80f6-4fa7650d4057"
      unitRef="usd">197998000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzMtMy0xLTEtOTU2NDI_5a1ff6f7-0e40-43fe-94bd-a5b5c54f33bc"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzMtNS0xLTEtOTU2NDI_07193884-209c-4382-9997-cd0d94c37ccd"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzMtNy0xLTEtOTU2NDI_99a981e8-6bd7-435c-bdd5-d9a6a39fb071"
      unitRef="usd">197998000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzQtMS0xLTEtOTU2NDI_941629f5-e2b4-4ccd-b12c-e5808e978fdc"
      unitRef="usd">320474000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzQtMy0xLTEtOTU2NDI_cf4e5239-d5d1-401e-afc1-1ca05e7ac5df"
      unitRef="usd">8000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzQtNS0xLTEtOTU2NDI_326a7961-080c-44f4-8a4a-5e60cc44caf7"
      unitRef="usd">4880000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzQtNy0xLTEtOTU2NDI_9fb7fa99-fa37-4fe0-8ecd-d07fd8464d80"
      unitRef="usd">315602000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzUtMS0xLTEtOTU2NDI_cee2f94a-fbd0-433f-8a03-682c80e54026"
      unitRef="usd">47014000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzUtMy0xLTEtOTU2NDI_aa23eba5-0b64-47d8-b69c-2a638a84844e"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzUtNS0xLTEtOTU2NDI_a6fdd0d4-3695-4ad3-aad2-d9034ba36583"
      unitRef="usd">1312000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzUtNy0xLTEtOTU2NDI_ceb8f038-f3b2-44bc-bbec-02c09383dda8"
      unitRef="usd">45702000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzYtMS0xLTEtOTU2NDI_1bfe4042-2b8e-44b9-b02e-1ae7fd0e4b53"
      unitRef="usd">54782000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzYtMy0xLTEtOTU2NDI_4e2a0958-7c4c-4a40-a53a-e6c30554dbc0"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzYtNS0xLTEtOTU2NDI_1e0aa766-1ce9-474a-9b50-9d59b9b16083"
      unitRef="usd">611000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzYtNy0xLTEtOTU2NDI_df8d4224-2ddb-4405-8b57-de2d5bc3d842"
      unitRef="usd">54171000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzctMS0xLTEtOTU2NDI_60f7c8bc-c64a-4dd6-88a3-853dd38617de"
      unitRef="usd">15109000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzctMy0xLTEtOTU2NDI_a9f32266-07fc-4c2d-9842-282b815d23f6"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzctNS0xLTEtOTU2NDI_49a5de88-b5eb-48de-8b9d-e679a00be4c7"
      unitRef="usd">361000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzctNy0xLTEtOTU2NDI_adf9e222-e948-414e-a6c2-19a915615d43"
      unitRef="usd">14748000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzgtMS0xLTEtOTU2NDI_2359cf53-8ec8-40e9-8955-2945d5851cca"
      unitRef="usd">205000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzgtMy0xLTEtOTU2NDI_c494672e-ff2e-4df6-b738-cdd425f3c8d3"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzgtNS0xLTEtOTU2NDI_8861ca2c-7387-408d-b005-ed8381ce0fa8"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzgtNy0xLTEtOTU2NDI_70fac78e-a06d-4c53-b259-c44aaf095f61"
      unitRef="usd">205000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzktMS0xLTEtOTU2NDI_837421a1-b991-431f-9b15-402c0f06f6af"
      unitRef="usd">43715000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzktMy0xLTEtOTU2NDI_f7a04903-7a4f-44e4-8119-42d0ccb452d8"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzktNS0xLTEtOTU2NDI_1e8597d0-5c11-4159-bf6b-f6079adccf6f"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzktNy0xLTEtOTU2NDI_f0b2a41b-a83b-437a-98ce-73afbfcb616f"
      unitRef="usd">43715000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEwLTEtMS0xLTk1NjQy_391b2332-096c-4c07-a81d-b6140c6e530d"
      unitRef="usd">349492000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEwLTMtMS0xLTk1NjQy_ec857874-386c-48fb-9746-b34dcd93d683"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEwLTUtMS0xLTk1NjQy_f3105ba1-4897-41bf-ab6d-d78f42832a5c"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEwLTctMS0xLTk1NjQy_104cedf2-a124-4e79-86f4-cf30047c5933"
      unitRef="usd">349492000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEyLTEtMS0xLTk1NjQy_9aecdb86-dd5c-4966-a430-be88b0cbc5a5"
      unitRef="usd">1066361000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEyLTMtMS0xLTk1NjQy_cf749e17-acdf-44b6-b1ae-ce16f317cbe2"
      unitRef="usd">8000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEyLTUtMS0xLTk1NjQy_4b505e57-f09e-4c62-a943-deb3c86fe3b7"
      unitRef="usd">7750000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZToyMjc2NjI4M2Y5ODE0YmMyYjY4MDk4MjU5ZjUwMjY4MS90YWJsZXJhbmdlOjIyNzY2MjgzZjk4MTRiYzJiNjgwOTgyNTlmNTAyNjgxXzEyLTctMS0xLTk1NjQy_db2f683f-bfee-43e5-9324-dfd22625319b"
      unitRef="usd">1058619000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="iaf922660c97245b5934c5e91363bb7b9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzItMS0xLTEtOTU2NDI_8b96b7d3-3586-4c66-a7b5-e438e8541048"
      unitRef="usd">85165000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="iaf922660c97245b5934c5e91363bb7b9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzItMy0xLTEtOTU2NDI_31e1636f-0eea-4c06-93a8-60a458c7d818"
      unitRef="usd">15000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="iaf922660c97245b5934c5e91363bb7b9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzItNS0xLTEtOTU2NDI_2254d9bf-59ff-44be-8178-6fe372a8b795"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="iaf922660c97245b5934c5e91363bb7b9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzItNy0xLTEtOTU2NDI_b94afe85-8b54-4090-b00d-fc799d9756b8"
      unitRef="usd">85180000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i9fd2de6d97f94efaa082f38296a86187_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzMtMS0xLTEtOTU2NDI_3e7339fa-59fa-4725-b1e5-49da59d3e4cc"
      unitRef="usd">389837000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i9fd2de6d97f94efaa082f38296a86187_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzMtMy0xLTEtOTU2NDI_5900bfb5-45bc-4682-a660-492a964f82ba"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i9fd2de6d97f94efaa082f38296a86187_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzMtNS0xLTEtOTU2NDI_af412848-1179-4e17-9c7f-0dc7c089feed"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i9fd2de6d97f94efaa082f38296a86187_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzMtNy0xLTEtOTU2NDI_39b98829-00b8-4d46-965d-4bf196c35cad"
      unitRef="usd">389837000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i0373a480e1e34bf280707c201a77c835_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzQtMS0xLTEtOTU2NDI_d679b21b-9070-4567-a26f-e260a40607cb"
      unitRef="usd">371374000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i0373a480e1e34bf280707c201a77c835_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzQtMy0xLTEtOTU2NDI_b60add5b-900b-4c4b-870f-0fa035df2be0"
      unitRef="usd">623000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i0373a480e1e34bf280707c201a77c835_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzQtNS0xLTEtOTU2NDI_4d45dfb8-0249-4d76-b491-266ae24b2922"
      unitRef="usd">37000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i0373a480e1e34bf280707c201a77c835_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzQtNy0xLTEtOTU2NDI_a70a5b97-b977-45dd-a2ac-a4790ef1c718"
      unitRef="usd">371960000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i538e753e8778451c85461ce2e7968ffa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzUtMS0xLTEtOTU2NDI_1dae509f-d682-4135-a08b-9b246619672b"
      unitRef="usd">64401000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i538e753e8778451c85461ce2e7968ffa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzUtMy0xLTEtOTU2NDI_0b1e067b-a593-4099-a414-9b09aaa9f090"
      unitRef="usd">62000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i538e753e8778451c85461ce2e7968ffa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzUtNS0xLTEtOTU2NDI_08b9a7c0-38c6-48bc-b206-b7621ca01c70"
      unitRef="usd">1000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i538e753e8778451c85461ce2e7968ffa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzUtNy0xLTEtOTU2NDI_9ff3f09b-99e0-498a-8fe5-e1cc027036f7"
      unitRef="usd">64462000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="ic8974b3151e34da3838f54b6a3a474d0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzYtMS0xLTEtOTU2NDI_454b9b06-5a13-461a-bf87-8d030401ff51"
      unitRef="usd">47925000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="ic8974b3151e34da3838f54b6a3a474d0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzYtMy0xLTEtOTU2NDI_a2304b97-65df-4a26-a7b2-c92ad6bb6bcb"
      unitRef="usd">29000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="ic8974b3151e34da3838f54b6a3a474d0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzYtNS0xLTEtOTU2NDI_3574be5f-7a0d-4fb2-a479-9c125935c135"
      unitRef="usd">7000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="ic8974b3151e34da3838f54b6a3a474d0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzYtNy0xLTEtOTU2NDI_3afec7e5-ec72-4f3a-b4c3-390711974045"
      unitRef="usd">47947000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i1af67832452840318dc09e021e2ef194_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzctMS0xLTEtOTU2NDI_9e20af74-8643-420b-910f-d22581883a6a"
      unitRef="usd">33177000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i1af67832452840318dc09e021e2ef194_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzctMy0xLTEtOTU2NDI_8e306975-edef-4bde-bec1-d128aed1d284"
      unitRef="usd">10000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i1af67832452840318dc09e021e2ef194_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzctNS0xLTEtOTU2NDI_de7678cb-cfb1-42cb-9ce1-17cba49d3388"
      unitRef="usd">2000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i1af67832452840318dc09e021e2ef194_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzctNy0xLTEtOTU2NDI_76b3c3ba-64b6-47a1-9145-2c50032ef722"
      unitRef="usd">33185000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="if05f4128aee3410bb3bc56bb00538fd9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtMS0xLTEtOTc0OTI_6bd9547a-d01a-424e-befc-c4b1db7a5502"
      unitRef="usd">1685000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="if05f4128aee3410bb3bc56bb00538fd9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtMy0xLTEtOTc0OTI_5fe179d2-868b-4c22-a8f1-060c7fb01308"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="if05f4128aee3410bb3bc56bb00538fd9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtNS0xLTEtOTc0OTI_29820e85-d675-409e-a130-ac8871fd325b"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="if05f4128aee3410bb3bc56bb00538fd9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtNy0xLTEtOTc0OTI_406d761d-20bf-4ba4-a885-cb4c5d106459"
      unitRef="usd">1685000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i3e6598755e654042839a6587840dbcff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtMS0xLTEtOTU2NDI_4125d494-d312-4eaa-bfbf-4b62a9b2516e"
      unitRef="usd">82250000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i3e6598755e654042839a6587840dbcff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtMy0xLTEtOTU2NDI_e51b740b-b5a4-4d76-94ec-a10d44167882"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i3e6598755e654042839a6587840dbcff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtNS0xLTEtOTU2NDI_afeb68b6-865a-4f48-80c6-b58d59ade955"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i3e6598755e654042839a6587840dbcff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzgtNy0xLTEtOTU2NDI_6154853b-c5e8-4971-b125-1cfc7cf41a7b"
      unitRef="usd">82250000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i1d4cb80e49cf4ff19b676be35a7a7d87_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzktMS0xLTEtOTU2NDI_60922c65-1966-482b-986a-7e8aec8c60dc"
      unitRef="usd">125118000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i1d4cb80e49cf4ff19b676be35a7a7d87_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzktMy0xLTEtOTU2NDI_f6633a05-40d9-475c-83f7-26e15b3779b9"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i1d4cb80e49cf4ff19b676be35a7a7d87_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzktNS0xLTEtOTU2NDI_a7f794bb-e069-4167-b086-e70127dd9924"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i1d4cb80e49cf4ff19b676be35a7a7d87_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzktNy0xLTEtOTU2NDI_a541a0ad-81fb-4c34-9b9b-03001112122c"
      unitRef="usd">125118000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i0f7d81c84710498ba6810bb29681506b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzEwLTEtMS0xLTk1NjQy_4b3e5d89-6bb8-46ab-bfa4-cfca8bc8b76c"
      unitRef="usd">1000000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i0f7d81c84710498ba6810bb29681506b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzEwLTMtMS0xLTk1NjQy_72890637-54fa-4b80-81be-175b2fcfe7fa"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i0f7d81c84710498ba6810bb29681506b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzEwLTUtMS0xLTk1NjQy_36e55cea-6454-40e1-a9e5-24be206991fa"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i0f7d81c84710498ba6810bb29681506b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzEwLTctMS0xLTk1NjQy_493c4254-2c95-4895-b38c-1709f05844aa"
      unitRef="usd">1000000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzExLTEtMS0xLTk1NjQy_bab711dc-8ae2-4217-95cf-9c6355d56be6"
      unitRef="usd">1201932000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzExLTMtMS0xLTk1NjQy_bb68d8ed-719d-4c19-8ee3-628b3003666a"
      unitRef="usd">739000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzExLTUtMS0xLTk1NjQy_052604c5-2799-4e3c-b91d-46190f1286d7"
      unitRef="usd">47000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo2YTUyM2VkZTA5Yzg0NDYyOGUzYTM4Yjc3MDE2NDIwNS90YWJsZXJhbmdlOjZhNTIzZWRlMDljODQ0NjI4ZTNhMzhiNzcwMTY0MjA1XzExLTctMS0xLTk1NjQy_a14d1903-a54d-4583-a2df-90065788b44d"
      unitRef="usd">1202624000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90ZXh0cmVnaW9uOjQ2OTYxZjFiZjMwYTQ4NTk5MDliZjIxZTgwYzAxMjE2XzI2ODM_62db6ae8-fd82-4255-8ba8-48bc4cdaeb97">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the contractual maturities of the Company&#x2019;s available-for-sale investments measured at fair value (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&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;Less Than 12 Months&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;12 months or greater&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;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;315,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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,702&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,748&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;205&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;871,112&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,507&#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;border-bottom:3pt double #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,058,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzItMS0xLTEtOTU2NDI_3841e182-be9f-4996-9f99-b9d549fc203c"
      unitRef="usd">36986000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzItMy0xLTEtOTU2NDI_87e074ee-39ee-4e58-8ea0-823750abe7fb"
      unitRef="usd">0</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzItNS0xLTEtOTU2NDI_37b37a44-b5e4-4ec1-bdd8-06fe2c883eb8"
      unitRef="usd">36986000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzMtMS0xLTEtOTU2NDI_43e2b43a-191b-49bd-ae79-3f88646dc4fe"
      unitRef="usd">197998000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzMtMy0xLTEtOTU2NDI_56bb9607-2ac4-4179-a2f4-5b40b8feb422"
      unitRef="usd">0</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzMtNS0xLTEtOTU2NDI_28d5c46a-0f11-48a0-b231-5bfd6289b46d"
      unitRef="usd">197998000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzQtMS0xLTEtOTU2NDI_3a1a8289-9a5c-4636-ac07-d74acfec41e7"
      unitRef="usd">203960000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzQtMy0xLTEtOTU2NDI_f8ae6578-5dbe-48fc-b1a7-c5b0e5365ca3"
      unitRef="usd">111642000</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzQtNS0xLTEtOTU2NDI_aee01ac2-4aca-455b-8120-e15323c0fc2b"
      unitRef="usd">315602000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzUtMS0xLTEtOTU2NDI_70e4be7c-1304-4115-9dc3-735595217d52"
      unitRef="usd">25429000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzUtMy0xLTEtOTU2NDI_81c0a87a-46c2-4a3a-9370-b8eb283d1596"
      unitRef="usd">20273000</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzUtNS0xLTEtOTU2NDI_9b34e4dd-466e-402e-b6c3-7f32fbc01a81"
      unitRef="usd">45702000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzYtMS0xLTEtOTU2NDI_1f799887-accd-413d-a907-e499171bf945"
      unitRef="usd">8627000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzYtMy0xLTEtOTU2NDI_4b2bc3eb-f17b-4be6-a96e-b1dc2a92d13f"
      unitRef="usd">45544000</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzYtNS0xLTEtOTU2NDI_190c794a-4424-468c-b0af-7448ae0fa1e1"
      unitRef="usd">54171000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzctMS0xLTEtOTU2NDI_8a2804ad-a415-4343-b130-72d95682e1f0"
      unitRef="usd">4700000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzctMy0xLTEtOTU2NDI_883be53b-e16a-4f39-be53-263c74d7c20f"
      unitRef="usd">10048000</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzctNS0xLTEtOTU2NDI_399e276e-8c1e-4e78-9b7c-225f4edd3962"
      unitRef="usd">14748000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzgtMS0xLTEtOTU2NDI_0c90eb92-2df7-41e4-acbf-d811bcb2549f"
      unitRef="usd">205000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzgtMy0xLTEtOTU2NDI_a6d55952-ca36-42e9-abd0-2534f840bab4"
      unitRef="usd">0</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzgtNS0xLTEtOTU2NDI_b437f664-ce4a-4687-9aeb-7fb720eccfa0"
      unitRef="usd">205000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzktMS0xLTEtOTU2NDI_641a8e64-a3f0-4763-bb8f-9a25a7ed28f4"
      unitRef="usd">43715000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzktMy0xLTEtOTU2NDI_6ea9d385-6889-470d-bf05-8410b59de0d0"
      unitRef="usd">0</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzktNS0xLTEtOTU2NDI_54f59de0-4504-410b-ad98-37d4fdfd55ac"
      unitRef="usd">43715000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzEwLTEtMS0xLTk1NjQy_4cb0471d-1c90-45a6-83e0-a342ede86e46"
      unitRef="usd">349492000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzEwLTMtMS0xLTk1NjQy_9d164625-9c6a-4614-8fec-e36f66b8a24f"
      unitRef="usd">0</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="ic9500be87dd244ef94db77ac3ba5d47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzEwLTUtMS0xLTk1NjQy_d374efbe-a814-48e8-97c5-cfd44c593902"
      unitRef="usd">349492000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzEyLTEtMS0xLTk1NjQy_eda0ff4d-c538-4b22-b41b-d753401d41de"
      unitRef="usd">871112000</gwre:DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateLessThan12Months>
    <gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzEyLTMtMS0xLTk1NjQy_4ff13375-d72a-4b81-b771-67eddcbd4d76"
      unitRef="usd">187507000</gwre:AvailableForSaleSecuritiesDebtMaturitiesNonCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo3NWU2OWY1YTMwODU0YzBhODM3OTA3YzU4NjE0NjZmYy90YWJsZXJhbmdlOjc1ZTY5ZjVhMzA4NTRjMGE4Mzc5MDdjNTg2MTQ2NmZjXzEyLTUtMS0xLTk1NjQy_72d94380-ac37-4897-bee6-b80c8a563e71"
      unitRef="usd">1058619000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90ZXh0cmVnaW9uOjQ2OTYxZjFiZjMwYTQ4NTk5MDliZjIxZTgwYzAxMjE2XzI3MDg_effd9165-b5ee-438e-aa2c-7f9ee5deb456">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables summarize the Company&#x2019;s available-for-sale investments measured at fair value, by level within the fair value hierarchy (in thousands):  &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:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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, 2022&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&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: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&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Cash equivalents:&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency 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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;132,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;132,066&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,755&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;501,247&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Short-term investments:&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,932&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;203,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,700&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total short-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;369,865&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;369,865&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Long-term investments:&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,273&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,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 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total long-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,507&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,507&#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 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;709,127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,058,619&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&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;/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:9pt;font-weight:700;line-height:100%"&gt;Level 1&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;Level 2&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;Level 3&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Cash equivalents:&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 #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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,825&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240,943&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Short-term investments:&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,183&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;274,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;274,012&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,320&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,036&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,353&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,750&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Strategic convertible debt investment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total short-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;733,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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:10pt;font-weight:400;line-height:100%"&gt;734,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Long-term investments:&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,142&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,142&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,911&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign government bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,832&#160;&lt;/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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Municipal bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total long-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227,163&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227,163&#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 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;125,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,076,506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,202,624&#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:FairValueAssetsMeasuredOnRecurringBasisTextBlock>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i18a4e147e7024a8c8b4019430192bae7_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMtMS0xLTEtOTU2NDI_c9562d8c-1438-43da-a269-1c628172e89b"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i47b6e38958494a93a7a259940f5e6b9d_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMtMy0xLTEtOTU2NDI_94a12c71-cc53-41a7-bf62-b0a49dd7ba92"
      unitRef="usd">132066000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i96937d34327d4d73ab0f35b9449e8a9b_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMtNS0xLTEtOTU2NDI_8f0299f1-df60-45ca-ac9c-01dba5ecf629"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i4ccbdb6fc66843029bdd621c02740498_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMtNy0xLTEtOTU2NDI_0097d4cb-8475-4ff8-9455-7566807b4db0"
      unitRef="usd">132066000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i3978a1e06ae54e3ea66bed55bc3a23c5_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzUtMS0xLTEtOTU2NDI_a03c43ec-7563-4223-a200-5eff90803f4d"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i85dadb45dbca427d8e191a42bd6e0362_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzUtMy0xLTEtOTU2NDI_61be8058-7882-4467-85ed-109b4809128e"
      unitRef="usd">9689000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i69c02ae8ae05465b897dfe7cdb266a03_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzUtNS0xLTEtOTU2NDI_50d19723-e4ae-4679-b291-33ecd7a47342"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="iaf866fd9fa454958a0036bbabf90e523_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzUtNy0xLTEtOTU2NDI_6781f02b-bd66-46a8-905d-88c683aa5163"
      unitRef="usd">9689000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i8e37211c0c4b48f982ad4e9643354d04_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzYtMS0xLTEtOTU2NDI_3d839ad4-6e5a-4998-b1eb-ad5363d466ad"
      unitRef="usd">349492000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="iab6e26c5b0f340338348ca405db9fb95_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzYtMy0xLTEtOTU2NDI_81007b4c-c612-48b7-85ee-5887e45d64b8"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i1c5429c00bb14287a4bb94d6108421c2_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzYtNS0xLTEtOTU2NDI_75d8d904-5d90-41ff-ae6c-7b32431d508e"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ie1fbccff1aea4c8da9b6cb50ca51eeac_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzYtNy0xLTEtOTU2NDI_b8b297ec-e397-4429-b2a6-c6fe57897fa7"
      unitRef="usd">349492000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i6d824d73aa7e49458fc9373c5041a28b_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzgtMS0xLTEtOTU2NDI_92358fc9-8dbf-4b83-b844-10bd3ca46cd0"
      unitRef="usd">349492000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i259386de712c488798757db6bca005f6_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzgtMy0xLTEtOTU2NDI_6c675602-d1d5-4d4a-a0c3-97bcdcb082c7"
      unitRef="usd">151755000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i780dcb580dfa4e33a3bdd6ba483b264c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzgtNS0xLTEtOTU2NDI_8123d70d-8e97-495f-b89c-b25244984564"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzgtNy0xLTEtOTU2NDI_5fd9a58e-ce45-4bea-90b6-6616aa015971"
      unitRef="usd">501247000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i053034f666454dd2956594408e980a4d_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEwLTEtMS0xLTk1NjQy_4378408f-36f6-48ad-a3b6-ce659b2f8a79"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i1690557ce4f748f3a1b9d24a828920a8_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEwLTMtMS0xLTk1NjQy_4f9e91ca-9266-436b-b3f0-fd2c9817f788"
      unitRef="usd">26986000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ief0cd084ff48481bb183128fc8b0a29e_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEwLTUtMS0xLTk1NjQy_b9a3e9d7-aaa2-4f8c-a4bd-622c5e9e6482"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if97f3d86b9b74810ab637a51a5e2b357_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEwLTctMS0xLTk1NjQy_4ef90916-d550-426a-89f5-baefaf033a26"
      unitRef="usd">26986000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i4e731934991740debc2320257987316a_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzExLTEtMS0xLTk1NjQy_63cd4670-0033-49b8-8b26-c13a5989d62e"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="iec8833e3146342e8ac00f246ff0adc39_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzExLTMtMS0xLTk1NjQy_a9a27283-c9c1-4fd3-b29b-78f1a4d1529e"
      unitRef="usd">65932000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i4326094b88484535b6b9f79eed32bbbd_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzExLTUtMS0xLTk1NjQy_50d6a3bf-d87a-462e-a6fd-0dda350ae487"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if8ad7e7a589a4bf583ffd65224c3bebe_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzExLTctMS0xLTk1NjQy_32c37bbb-18c1-4291-a9bc-4e5773958960"
      unitRef="usd">65932000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ie562faad3ef249c3be0fa8a9e9941105_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEyLTEtMS0xLTk1NjQy_3e91ad3c-1134-41c8-8871-1acaa2604677"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ia1877b6af59c47589866331e1b367639_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEyLTMtMS0xLTk1NjQy_a93083f2-a797-4d81-ad0b-b23e0f9da2ac"
      unitRef="usd">203960000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i767ce4177cea472f8579a4ac1bf8bf22_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEyLTUtMS0xLTk1NjQy_fee3f063-0b72-4f98-a9e4-73be54054a88"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEyLTctMS0xLTk1NjQy_23c4a9b0-1f1d-4fd6-80e4-94ae3913c857"
      unitRef="usd">203960000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i104b36705f9d4c138a041e2f18992ba3_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEzLTEtMS0xLTk1NjQy_f1faa13e-1cda-44cc-8542-f597ac3c14fa"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ida853509a10449d9bd79b64dc4326020_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEzLTMtMS0xLTk1NjQy_d34f65bf-2d81-46a0-9a28-c7a5431f9ba1"
      unitRef="usd">25429000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="id76669367031440da08e50f9a977a2d7_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEzLTUtMS0xLTk1NjQy_e8cef2d4-f7b2-4f92-a27d-4f673e600e35"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzEzLTctMS0xLTk1NjQy_8b2e31a5-c4d9-4f5f-86ab-b65d40a9f33c"
      unitRef="usd">25429000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i0a1402b0326f4ffc89d385a9693abd6a_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE0LTEtMS0xLTk1NjQy_327a6cfc-51bb-4139-92d6-275731a801c8"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i1e354c65cf8846d3acf6f4b9dfabddd5_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE0LTMtMS0xLTk1NjQy_e142e5e2-1730-4850-8f1f-24e2860761f2"
      unitRef="usd">8627000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i50b1bd9bd57e4e228bf2f249bc166e1d_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE0LTUtMS0xLTk1NjQy_ff997791-e0a7-4272-9861-cb428e377134"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE0LTctMS0xLTk1NjQy_8df3fcb8-fd50-4114-b95f-e1e45cb9d831"
      unitRef="usd">8627000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="id828183dbaca4130b2009c8f434f9e0f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE1LTEtMS0xLTk1NjQy_4ba42fb5-3002-44c0-aaa8-27f8be8b93ea"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if27c526183e04e6090348fa09e1106ae_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE1LTMtMS0xLTk1NjQy_e4d2c68e-488a-40aa-8e45-2110b5cc69ac"
      unitRef="usd">4700000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="iec7837b626a34eeaada8a44967c35f28_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE1LTUtMS0xLTk1NjQy_6dbb58a4-b80e-4903-a587-097fb65c4e1b"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE1LTctMS0xLTk1NjQy_2ced2277-e254-46f4-8ee5-8565f788ac4b"
      unitRef="usd">4700000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i5a3e9e59c2a84df18223cef3f36b7e50_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE2LTEtMS0xLTk1NjQy_7a51c54f-1038-474a-bc74-b590c7fbaf36"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ie83f87b6b256473e81e89c757b288731_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE2LTMtMS0xLTk1NjQy_3ba216d2-bf7c-4d98-ba97-f864d9f0b76a"
      unitRef="usd">205000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if02c712ee515448e87e792a3afd2c54c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE2LTUtMS0xLTk1NjQy_3b0ef791-13d0-47e2-9477-7c9c6b6dab0f"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i0389d693acb44303acc9bed3c60afc92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE2LTctMS0xLTk1NjQy_32942232-c08f-46ea-92be-dc22a8ff17ff"
      unitRef="usd">205000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i965f92ab2ac64908b108e7c04d0ea47c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE3LTEtMS0xLTk1NjQy_bc53cdbc-f625-4d7e-bd99-214ff3212b94"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ic19c7abb186e4eaab4ad61a8e72e5fe1_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE3LTMtMS0xLTk1NjQy_4cd3e622-aa48-403c-9a49-56de7b7583e5"
      unitRef="usd">34026000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if2bfe35af20d4d028be853c6e6bdc086_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE3LTUtMS0xLTk1NjQy_287b3d0e-c4ad-4508-8b73-7cf09d6f1a24"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i150d27f84dc64ff9b9cfab649a38eb92_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE3LTctMS0xLTk1NjQy_23c4733f-300f-46c3-9e56-4c3c905733a9"
      unitRef="usd">34026000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i6d824d73aa7e49458fc9373c5041a28b_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE5LTEtMS0xLTk1NjQy_45d24599-b7cb-414f-8df3-43ab24e78739"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i259386de712c488798757db6bca005f6_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE5LTMtMS0xLTk1NjQy_9be138fb-f54d-44a4-8b8d-76e5d9fdb9ad"
      unitRef="usd">369865000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i780dcb580dfa4e33a3bdd6ba483b264c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE5LTUtMS0xLTk1NjQy_8ab7a693-a63d-41d0-bc0a-629bc8452857"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzE5LTctMS0xLTk1NjQy_9f943912-17a6-404e-86c3-997b001f3ba2"
      unitRef="usd">369865000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ie562faad3ef249c3be0fa8a9e9941105_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzIzLTEtMS0xLTk1NjQy_b89553e0-3a9d-421d-8a58-b9a04cfb8ed5"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ia1877b6af59c47589866331e1b367639_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzIzLTMtMS0xLTk1NjQy_c96ff1ed-6e58-412c-9be3-954aeaf1a1f1"
      unitRef="usd">111642000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i767ce4177cea472f8579a4ac1bf8bf22_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzIzLTUtMS0xLTk1NjQy_0e6db1d0-c866-424d-b710-fe947aa9c489"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="iabf7229d0dd54135960fde8a036686b4_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzIzLTctMS0xLTk1NjQy_0e301bfb-ed67-4098-a616-780f8c2fddf2"
      unitRef="usd">111642000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i104b36705f9d4c138a041e2f18992ba3_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI0LTEtMS0xLTk1NjQy_4cbe1e05-3aa8-40d2-96a7-c19b96e44f49"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ida853509a10449d9bd79b64dc4326020_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI0LTMtMS0xLTk1NjQy_89798c26-5f38-407c-b6a2-42abfa19fe74"
      unitRef="usd">20273000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="id76669367031440da08e50f9a977a2d7_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI0LTUtMS0xLTk1NjQy_8f643593-49d4-425f-93bb-314c1150ddac"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i4cb0456cc03e49cfa9db3c07bb1c289f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI0LTctMS0xLTk1NjQy_2eafaad3-4437-4311-a461-6d26c5018dd3"
      unitRef="usd">20273000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i0a1402b0326f4ffc89d385a9693abd6a_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI1LTEtMS0xLTk1NjQy_6f93e132-3d22-4b83-8e6b-dbcf0d27c22d"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i1e354c65cf8846d3acf6f4b9dfabddd5_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI1LTMtMS0xLTk1NjQy_0444e4df-c43d-4939-b21e-b7ed82424f12"
      unitRef="usd">45544000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i50b1bd9bd57e4e228bf2f249bc166e1d_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI1LTUtMS0xLTk1NjQy_c4b0d5ee-cb61-4d69-85bf-65fb90bd72b2"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i5f62c39ea2e843bcbfae517e29991566_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI1LTctMS0xLTk1NjQy_a8572585-93ac-4a80-8319-8339b209435f"
      unitRef="usd">45544000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="id828183dbaca4130b2009c8f434f9e0f_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI2LTEtMS0xLTk1NjQy_2c050eb7-665b-4860-950d-4771f17625da"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="if27c526183e04e6090348fa09e1106ae_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI2LTMtMS0xLTk1NjQy_bc48c2b0-31b4-49be-bc0a-ebdf209666ce"
      unitRef="usd">10048000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="iec7837b626a34eeaada8a44967c35f28_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI2LTUtMS0xLTk1NjQy_be28af83-e82c-4348-9231-3cd126322ae2"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i1fb2f34a5026478eb8bac452a8bc3309_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzI2LTctMS0xLTk1NjQy_c4c3482a-eaf6-4ac0-9227-8dfc7c880e7e"
      unitRef="usd">10048000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i6d824d73aa7e49458fc9373c5041a28b_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMwLTEtMS0xLTk1NjQy_833ba75f-ed21-4495-8b96-cf21988e0586"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i259386de712c488798757db6bca005f6_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMwLTMtMS0xLTk1NjQy_b064fe71-f363-4e10-9ac0-2a1b9e3634a2"
      unitRef="usd">187507000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i780dcb580dfa4e33a3bdd6ba483b264c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMwLTUtMS0xLTk1NjQy_560b19de-a6e2-4657-b09c-2f9471aa5243"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMwLTctMS0xLTk1NjQy_bd5e79d5-94c2-41c3-9d91-fcde142216bf"
      unitRef="usd">187507000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i6d824d73aa7e49458fc9373c5041a28b_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMxLTEtMS0xLTk1NjQy_30cf14ec-cf10-4e9a-8dc4-87cd5fbffe2f"
      unitRef="usd">349492000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i259386de712c488798757db6bca005f6_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMxLTMtMS0xLTk1NjQy_66c8018c-8882-4090-88e0-dc1b481e2223"
      unitRef="usd">709127000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i780dcb580dfa4e33a3bdd6ba483b264c_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMxLTUtMS0xLTk1NjQy_73d50586-7c76-48a5-9213-1b29bfc7bff3"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTo1NzllMGQzZjcwMjc0YmQyOTNlOTg0ZmQ5YTM3MjBkYi90YWJsZXJhbmdlOjU3OWUwZDNmNzAyNzRiZDI5M2U5ODRmZDlhMzcyMGRiXzMxLTctMS0xLTk1NjQy_38456795-aaac-4859-afe4-745315351b01"
      unitRef="usd">1058619000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i686491bf635349279f21c933e7fe74c7_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMtMS0xLTEtOTU2NDI_22291a21-2097-461d-a0a8-4bf2ae2953b9"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i1bc49c158b0747c18dcfe1f9041fb356_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMtMy0xLTEtOTU2NDI_50068616-e09b-472b-933c-10b4536e0931"
      unitRef="usd">115825000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i3ceaa67aa6ea47ec973e01d1bd88ad13_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMtNS0xLTEtOTU2NDI_878748ba-3193-44ef-bc7d-69df8c594703"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i9fd2de6d97f94efaa082f38296a86187_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMtNy0xLTEtOTU2NDI_5126d41d-628d-49a5-849f-a30633718233"
      unitRef="usd">115825000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i4044cbd022b14fecb80bfcf25422e4ad_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzYtMS0xLTEtOTU2NDI_bbb897da-8231-4d05-8af8-34cbe9e1b0ea"
      unitRef="usd">125118000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ibcef9bc5e13941b3a325ea4e4486b854_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzYtMy0xLTEtOTU2NDI_dc6381a8-c173-44ab-925d-36f5881ea0ce"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i23bced28663f49f3804b4d5945f98092_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzYtNS0xLTEtOTU2NDI_e6af72c9-3822-49a9-85d7-f636d4a14f02"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i1d4cb80e49cf4ff19b676be35a7a7d87_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzYtNy0xLTEtOTU2NDI_225347d1-a27d-43bb-bcaf-a5ac05574b57"
      unitRef="usd">125118000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i9e70569af23f4ba8bf41266cfbab78c1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzgtMS0xLTEtOTU2NDI_efde7470-58b8-4bb5-87ae-abcd77973d33"
      unitRef="usd">125118000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="id3a8163dccc3416185a53ac56c65cdca_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzgtMy0xLTEtOTU2NDI_993446e3-1cb0-4948-a9d0-30a0de948f18"
      unitRef="usd">115825000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="if1b0c72ee51e46fbab1d92714f9c542f_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzgtNS0xLTEtOTU2NDI_9bc91238-eab4-4cc9-a138-5b8af375c6a3"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzgtNy0xLTEtOTU2NDI_18f9ee6c-3fb4-4787-ae45-bfd5c04401cd"
      unitRef="usd">240943000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i521f09bc48cf486cb6eb2736f067283d_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEwLTEtMS0xLTk1NjQy_43fa2bf8-d09f-46fc-8350-e968065ed505"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i33e0f7af13f14583b232870cd546c3fb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEwLTMtMS0xLTk1NjQy_6965938c-a0cf-4512-9dc7-dd03424fe1b9"
      unitRef="usd">69183000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="icc1a05a0e9354748b323fe0f6846d8f2_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEwLTUtMS0xLTk1NjQy_734a2cf7-a71e-4f4b-8550-2ee96d13a75f"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="iaf922660c97245b5934c5e91363bb7b9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEwLTctMS0xLTk1NjQy_2d2c5bae-f89b-4e0c-addd-5199ba03161e"
      unitRef="usd">69183000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i686491bf635349279f21c933e7fe74c7_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzExLTEtMS0xLTk1NjQy_b06a5d7b-022f-41a1-b940-7b1c73e0ba2b"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i1bc49c158b0747c18dcfe1f9041fb356_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzExLTMtMS0xLTk1NjQy_33456f0e-6337-4e6c-9e16-0049f68f82a3"
      unitRef="usd">274012000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i3ceaa67aa6ea47ec973e01d1bd88ad13_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzExLTUtMS0xLTk1NjQy_1c8565ce-11a7-47c7-9068-f75e43e9beb1"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i9fd2de6d97f94efaa082f38296a86187_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzExLTctMS0xLTk1NjQy_333c00e5-b138-473f-a9e9-6ca0eff775ef"
      unitRef="usd">274012000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ia131ca738e984652b86ffbb394cacda8_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEyLTEtMS0xLTk1NjQy_f034b8f4-fbac-4bcd-8e4f-ce54e0d43c43"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i85e0712031d54bdc8213bf85e85ae3fb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEyLTMtMS0xLTk1NjQy_73206b42-015e-4a6a-b688-abeb94fe7660"
      unitRef="usd">225384000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ia2b8530619f744d685669567a1c29172_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEyLTUtMS0xLTk1NjQy_923991f7-f4f7-4975-a37c-6a5a207443e0"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i0373a480e1e34bf280707c201a77c835_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEyLTctMS0xLTk1NjQy_cec21c2a-9a4e-4629-864c-e29653a29b69"
      unitRef="usd">225384000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ibfb5a41f5e7c4b468d22de9185286436_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEzLTEtMS0xLTk1NjQy_45ab4832-d073-4e26-aa9b-81eb1295b83e"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="iba77a59c7574449c86eb6a1b373dd8df_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEzLTMtMS0xLTk1NjQy_385bdc0d-8043-4e2f-9772-8843bcaf04be"
      unitRef="usd">45320000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if7a56f9597e14de49ce7503da9b77144_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEzLTUtMS0xLTk1NjQy_b5a6253f-1e48-49a1-b945-b1f73b6752f7"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i538e753e8778451c85461ce2e7968ffa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzEzLTctMS0xLTk1NjQy_3527f3b7-3eab-4143-9b4e-f4ef8e451033"
      unitRef="usd">45320000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="id551a222ede140ab83ebb039c86faa85_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE0LTEtMS0xLTk1NjQy_40513b92-80d0-49dd-9e53-db46fe68664b"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i1d3ca382a4104ac7be85255475d9873c_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE0LTMtMS0xLTk1NjQy_7fd94aa4-bbd6-445d-b2aa-05708fc9a03f"
      unitRef="usd">9036000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="icd1e5f5ef3ef465b85901687c26b9844_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE0LTUtMS0xLTk1NjQy_5702a5ec-865f-41a3-8f6f-c18fb5277046"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ic8974b3151e34da3838f54b6a3a474d0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE0LTctMS0xLTk1NjQy_25854fec-79ba-4e36-a8d3-d9322a202dff"
      unitRef="usd">9036000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ib99117acc23e4987b2de8556961728ac_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE1LTEtMS0xLTk1NjQy_99fb0c20-61b8-4ebc-9725-dbbb22723cfa"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i4a87bef5e3a14b2ba89ddf725d0aa7cf_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE1LTMtMS0xLTk1NjQy_5ba1863f-6e89-422b-a4bd-030e7b5baf26"
      unitRef="usd">28353000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ia34c55501368461182943efd11ea9118_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE1LTUtMS0xLTk1NjQy_a82f968a-a958-4831-8988-555387b1343e"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i1af67832452840318dc09e021e2ef194_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE1LTctMS0xLTExNjU5Mg_fde025b1-8ffe-4b7e-8d2a-1a2c86a98e58"
      unitRef="usd">28353000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ia994c2bd2c7649d89287fff418bfc6e6_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE2LTEtMS0xLTk3NTE0_9212cf47-7d9f-40d6-a785-45da82933509"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ib9200b718af347ba892012b08ec1bff1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE2LTMtMS0xLTk3NTE0_55027583-e791-4046-953b-0af440c6d367"
      unitRef="usd">1480000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="icacafb1579ac485ea7b0681ef08b7750_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE2LTUtMS0xLTk3NTE0_d091a9f1-ffc7-4e6a-9727-4edb358231a7"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if05f4128aee3410bb3bc56bb00538fd9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE2LTctMS0xLTk3NTE0_96dd1153-30ac-4b94-8a3c-26d54dfe6c6a"
      unitRef="usd">1480000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ib3a17f4775ad4f8d85d3b090303e575b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE3LTEtMS0xLTk1NjQy_763f4559-5419-4dc2-9777-588ac21fab10"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i83339abb0f9844e18f282ef98c231d6a_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE3LTMtMS0xLTk1NjQy_ab9cfdeb-2f0f-4cba-9950-3d244f410352"
      unitRef="usd">80750000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ic6578669c3834af2aef0fa378fae3bd1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE3LTUtMS0xLTk1NjQy_7dea8ef2-82e1-4837-83a4-71ad5899787e"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i3e6598755e654042839a6587840dbcff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE3LTctMS0xLTk1NjQy_1280ad33-301d-42cc-af9e-59901557b7e5"
      unitRef="usd">80750000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i158957454d7e4fa7bb36e8bf38adf396_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTEtMS0xLTk3NTM2_c9f8573e-42b6-41aa-a18d-6fc50275c45f"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="ie72b804d6e804b35b693c6294402bcfc_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTMtMS0xLTk3NTM2_a0272ff5-cad8-4dc9-bcb1-80f59f815a13"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i6b0ceaaf78c14680bfc6388dd82c2793_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTUtMS0xLTk3NTM2_4a86ef42-a483-4eef-9ba4-c2e1a4bd27ef"
      unitRef="usd">1000000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i0f7d81c84710498ba6810bb29681506b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTctMS0xLTk3NTM2_7bdeb4f1-012c-4bb7-a0ca-313ca37f1f8f"
      unitRef="usd">1000000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i9e70569af23f4ba8bf41266cfbab78c1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTEtMS0xLTk1NjQy_e2c38560-8160-4c4a-aa10-292d394586ac"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="id3a8163dccc3416185a53ac56c65cdca_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTMtMS0xLTk1NjQy_81f0b638-aa75-4bf0-a48c-922388aae2bc"
      unitRef="usd">733518000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="if1b0c72ee51e46fbab1d92714f9c542f_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTUtMS0xLTk1NjQy_93083dfd-7ae1-4384-a4a9-b80bb9b10ad0"
      unitRef="usd">1000000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzE4LTctMS0xLTk1NjQy_8ebc404c-8b34-4453-943d-ca699af5a377"
      unitRef="usd">734518000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i521f09bc48cf486cb6eb2736f067283d_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIwLTEtMS0xLTk1NjQy_4ee32a30-553c-4657-a21d-88336b0acfc6"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i33e0f7af13f14583b232870cd546c3fb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIwLTMtMS0xLTk1NjQy_486fa717-c5a8-42bc-b961-5103e97d1a4f"
      unitRef="usd">15997000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="icc1a05a0e9354748b323fe0f6846d8f2_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIwLTUtMS0xLTk1NjQy_e8e87002-bf97-4277-ae08-a558ce2cfa14"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="iaf922660c97245b5934c5e91363bb7b9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIwLTctMS0xLTk1NjQy_4c349ad3-a7ab-402f-8ffb-4aa65c09ecb1"
      unitRef="usd">15997000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ia131ca738e984652b86ffbb394cacda8_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIyLTEtMS0xLTk1NjQy_20b8a84c-a0f6-47a3-8193-db5376e3198f"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i85e0712031d54bdc8213bf85e85ae3fb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIyLTMtMS0xLTk1NjQy_4bb0f839-2241-43ea-9dba-5c5eb858d0e5"
      unitRef="usd">146576000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ia2b8530619f744d685669567a1c29172_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIyLTUtMS0xLTk1NjQy_c198e740-89dd-47c6-bd85-92bc44ae6f5f"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i0373a480e1e34bf280707c201a77c835_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIyLTctMS0xLTk1NjQy_0df8882b-eb38-49c0-835f-e98c7a9f8729"
      unitRef="usd">146576000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ibfb5a41f5e7c4b468d22de9185286436_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIzLTEtMS0xLTk1NjQy_8d3cc9b4-e850-4637-ae1d-8c6bb1b21e95"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="iba77a59c7574449c86eb6a1b373dd8df_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIzLTMtMS0xLTk1NjQy_bf9fd720-cdbd-49d9-80b4-4d1640d9a797"
      unitRef="usd">19142000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="if7a56f9597e14de49ce7503da9b77144_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIzLTUtMS0xLTk1NjQy_3b6f0c76-63bd-4d65-ba3f-f79d3a9908f7"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i538e753e8778451c85461ce2e7968ffa_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzIzLTctMS0xLTk1NjQy_9d20ff33-7d13-48a5-8138-c0b962fc58ef"
      unitRef="usd">19142000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="id551a222ede140ab83ebb039c86faa85_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI0LTEtMS0xLTk1NjQy_e37ac296-2c15-4808-b1c1-0a48f85e50ce"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i1d3ca382a4104ac7be85255475d9873c_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI0LTMtMS0xLTk1NjQy_cda63a52-da4b-4caf-bfad-dd9c35a5f3bb"
      unitRef="usd">38911000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="icd1e5f5ef3ef465b85901687c26b9844_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI0LTUtMS0xLTk1NjQy_b6f986f6-5a74-4047-9b4a-3bc08387bb57"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ic8974b3151e34da3838f54b6a3a474d0_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI0LTctMS0xLTk1NjQy_c3f26621-be02-4168-9853-13eb78aeb9c6"
      unitRef="usd">38911000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ib99117acc23e4987b2de8556961728ac_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTEtMS0xLTk3NTY2_2438f1ca-961f-4096-93b7-d31bf30d83aa"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i4a87bef5e3a14b2ba89ddf725d0aa7cf_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTMtMS0xLTk3NTY2_e0cc4a1b-236c-4b04-bda3-3f4701087f5d"
      unitRef="usd">4832000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ia34c55501368461182943efd11ea9118_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTUtMS0xLTk3NTY2_49b81a0a-635e-4e53-ba11-297e04f64d2c"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i1af67832452840318dc09e021e2ef194_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI1LTctMS0xLTk1NjQy_2613339a-a6d6-4006-b547-dc0039bb1986"
      unitRef="usd">4832000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ia994c2bd2c7649d89287fff418bfc6e6_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI3LTEtMS0xLTk3NTk0_9cbdb1c7-1a08-45d4-b2b4-1ca0ec031906"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ib9200b718af347ba892012b08ec1bff1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI3LTMtMS0xLTk3NTk0_7a443fd8-34f5-47da-b7a3-84a1d9f9878d"
      unitRef="usd">205000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="icacafb1579ac485ea7b0681ef08b7750_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI3LTUtMS0xLTk3NTk0_7103977b-9569-4183-8e0f-397d7bb75634"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="if05f4128aee3410bb3bc56bb00538fd9_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI3LTctMS0xLTk3NTk0_63c433e5-0b93-47b1-b68c-d62dfb1729e2"
      unitRef="usd">205000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ib3a17f4775ad4f8d85d3b090303e575b_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTEtMS0xLTk1NjQy_bfe3f27b-a0c4-49a4-929e-cf08e7b1fe39"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i83339abb0f9844e18f282ef98c231d6a_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTMtMS0xLTk1NjQy_c2dffcb4-b057-4a2b-831c-b341e35c5f75"
      unitRef="usd">1500000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="ic6578669c3834af2aef0fa378fae3bd1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTUtMS0xLTk1NjQy_8d1ba5b9-61c8-4bd3-9ba4-9a0860452d8a"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i3e6598755e654042839a6587840dbcff_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI2LTctMS0xLTk1NjQy_b37ddb5e-7b20-43e7-9e01-3e1a3f35a53c"
      unitRef="usd">1500000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i9e70569af23f4ba8bf41266cfbab78c1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI5LTEtMS0xLTk1NjQy_0cee82bd-7756-4cfc-8f4e-b10e683eafd8"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="id3a8163dccc3416185a53ac56c65cdca_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI5LTMtMS0xLTk1NjQy_51ac8542-0f09-45a8-bdea-6ffc217d04e3"
      unitRef="usd">227163000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="if1b0c72ee51e46fbab1d92714f9c542f_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI5LTUtMS0xLTk1NjQy_6eba3c41-f961-4be8-b531-63cfe2903b12"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzI5LTctMS0xLTk1NjQy_861a5977-2d68-4570-8009-68725f8b300a"
      unitRef="usd">227163000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecurities
      contextRef="i9e70569af23f4ba8bf41266cfbab78c1_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMwLTEtMS0xLTk1NjQy_1a0d2ba8-ef2e-40ec-badc-05c9d96d7655"
      unitRef="usd">125118000</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="id3a8163dccc3416185a53ac56c65cdca_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMwLTMtMS0xLTk1NjQy_1cdb1215-672e-4d07-b7d3-7f2e51d00a66"
      unitRef="usd">1076506000</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="if1b0c72ee51e46fbab1d92714f9c542f_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMwLTUtMS0xLTk1NjQy_ab8c87bc-dbbd-4205-8d4f-ea4203da4618"
      unitRef="usd">1000000</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90YWJsZTpmNDQ3MTg1MjFhNWE0NWUwYTMyNTEyOTJiOWE2NGY3OC90YWJsZXJhbmdlOmY0NDcxODUyMWE1YTQ1ZTBhMzI1MTI5MmI5YTY0Zjc4XzMwLTctMS0xLTk1NjQy_885733e6-ede5-45b6-8a6b-5eb85e718cd4"
      unitRef="usd">1202624000</us-gaap:AvailableForSaleSecurities>
    <us-gaap:LongTermDebtFairValue
      contextRef="i268eeadd47ac4ec0a97aa29402e787d5_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90ZXh0cmVnaW9uOjQ2OTYxZjFiZjMwYTQ4NTk5MDliZjIxZTgwYzAxMjE2XzIxOTU_7c81be13-5a7e-4f43-916c-6d89f36c25b8"
      unitRef="usd">387600000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="ibdb90adf0cc64905be0db306d1112349_I20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDYvZnJhZzo0Njk2MWYxYmYzMGE0ODU5OTA5YmYyMWU4MGMwMTIxNi90ZXh0cmVnaW9uOjQ2OTYxZjFiZjMwYTQ4NTk5MDliZjIxZTgwYzAxMjE2XzIyMDI_cbaf668e-da20-4c33-aa2f-89bdf02743e0"
      unitRef="usd">452000000</us-gaap:LongTermDebtFairValue>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzEwOTk1MTE2MjkyMTE1_99fce95b-7b0b-4d91-b13b-f2cf0388cb76">Acquisitions&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On August 18, 2021, the Company completed its acquisition of HazardHub, Inc. (&#x201c;HazardHub&#x201d;) for net cash consideration of approximately $53&#160;million, subject to customary transaction adjustments, including $8.2&#160;million of acquisition consideration holdback subject to service conditions over the next three years, which is being held in escrow and considered restricted cash. The escrow is included in the consolidated balance sheets in the amounts of $3.2&#160;million in prepaid expenses and other current assets and of $5.0&#160;million in other assets. HazardHub provides API-driven property risk insights to the property and casualty insurance industry through curation, analysis, and distillation of vast amounts of data to deliver a comprehensive, national catalog of risks that may damage or destroy property. The acquisition was accounted for as a business combination.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In conjunction with the purchase price allocation, the Company determined that HazardHub's separately identifiable intangible assets were acquired technology, customer relationships, and trademarks. The valuation models were based on estimates of future operating projections of HazardHub and rights to sell new products containing the acquired technology, as well as judgments on the discount rates used and other variables. The Company developed forecasts based on a number of factors, including future revenue and operating cost projections, a discount rate that is representative of the weighted average cost of capital, and royalty and long-term sustainable growth rates based on a market analysis. These fair value measurements were based on significant inputs that were not &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;observable in the market and thus represents a Level 3 measurement. The Company amortizes the acquired intangibles over their estimated useful lives as set forth in the table below.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preliminary allocation of purchase price is pending the final working capital adjustment and is therefore subject to potential future measurement period adjustments. The measurement period will end no later than August 17, 2022. The preliminary allocation of the purchase consideration is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Preliminary Purchase Price Allocation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Estimated Useful Lives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&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:10pt;font-weight:700;line-height:100%"&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired assets, net of assumed liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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:10pt;font-weight:400;line-height:100%"&gt;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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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:10pt;font-weight:400;line-height:100%"&gt;7&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,882)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total preliminary purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,331&#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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill of $31.3&#160;million arising from the acquisition is primarily related to the acquired workforce, expected synergies, and the opportunity to sell into and expand the Company&#x2019;s customer base. The goodwill recorded is not expected to be deductible for income tax purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pro forma and historical financial information has not been provided as the acquisition was not material to the consolidated financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i326b6ff709b3413f8d31049690b35019_D20210818-20210818"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzU0OTc1NTgyMzYwNg_449264d2-68eb-4980-acc5-a3cd417cfd65"
      unitRef="usd">53000000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="id73b6a1141c04e619bcdb34b55dca3b9_I20210818"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzEwOTk1MTE2MjkyMDg4_c280e095-fa2f-49a5-ae2f-781d5a760cd1"
      unitRef="usd">8200000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="ib616004b71ea46c59636bf54c65605e2_I20210818"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzEwOTk1MTE2MjkyMTAy_86613875-fe64-46ef-a147-9426b0395e90"
      unitRef="usd">3200000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i36caae5e7f3042d0b1f37b4a4d71c0c4_I20210818"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzU0OTc1NTgyMzYzMw_db5dbe37-201b-4d8e-a51e-14f2055ca1c7"
      unitRef="usd">5000000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzEwOTk1MTE2MjkyMTE2_121e2cf4-3206-4b10-bc7c-f95dd12c5cc4">The measurement period will end no later than August 17, 2022. The preliminary allocation of the purchase consideration 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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Preliminary Purchase Price Allocation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Estimated Useful Lives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(in thousands)&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:10pt;font-weight:700;line-height:100%"&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired assets, net of assumed liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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:10pt;font-weight:400;line-height:100%"&gt;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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 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:10pt;font-weight:400;line-height:100%"&gt;7&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,882)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total preliminary purchase consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,331&#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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <gwre:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsExcludingFiniteLivedIntangibles
      contextRef="id73b6a1141c04e619bcdb34b55dca3b9_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzItMS0xLTEtMTE2NTY5_f8e60709-f73c-4231-9652-2545e4c8e7bb"
      unitRef="usd">198000</gwre:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsExcludingFiniteLivedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i4882973f879e4c84a951754f04186bd1_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzMtMS0xLTEtMTE2NTY5_0f20b717-7240-44e7-8abc-39bc0bbd1517"
      unitRef="usd">9700000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i49755b7c80414520864ceed0a432cd48_D20210818-20210818"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzMtMy0xLTEtMTE2NTY5_e1dc01b0-c47d-4ad5-870b-390fee518cdc">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i64b63e80f6cf47e499a3ba21fba6d6a0_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzQtMS0xLTEtMTE2NTY5_1c18711e-517d-4545-9162-6501ef31b25c"
      unitRef="usd">5100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ia4d172c4d4744f69a57f614b30905ee3_D20210818-20210818"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzQtMy0xLTEtMTE2NTY5_e3cb8483-c60f-4393-8758-d58fbcad7c75">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i9fcf9d1c9e604861956ae179a8bf4099_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzUtMS0xLTEtMTE2NTY5_7f68c00a-6498-4be5-9014-6128e6e03fd8"
      unitRef="usd">900000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i43ee9d6ecefe42a3a05343aa17852f06_D20210818-20210818"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzUtMy0xLTEtMTE2NTY5_1b6feae5-1e13-4cf5-ba77-cb8031d72f49">P7Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:Goodwill
      contextRef="id73b6a1141c04e619bcdb34b55dca3b9_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzYtMS0xLTEtMTAzMzc4_0358fdfd-68ad-44a3-8ec0-23d92bdd697b"
      unitRef="usd">31315000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="id73b6a1141c04e619bcdb34b55dca3b9_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzctMS0xLTEtMTE2NTY5_d1a4761e-edef-435a-a145-6c0fc5860286"
      unitRef="usd">2882000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="id73b6a1141c04e619bcdb34b55dca3b9_I20210818"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90YWJsZTo5MjMzNzU1NGI4NjY0ODA2ODU1ZTBjOWE1NWE5Y2RlYy90YWJsZXJhbmdlOjkyMzM3NTU0Yjg2NjQ4MDY4NTVlMGM5YTU1YTljZGVjXzgtMS0xLTEtMTE2NTY5_6cbd0046-f936-4daf-921c-63e05ae3501e"
      unitRef="usd">44331000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:Goodwill
      contextRef="id73b6a1141c04e619bcdb34b55dca3b9_I20210818"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV81NDk3NTU4MTUzMzQvZnJhZzo1OWVjMWEzNzkwMDc0MDJlYjI5MDI0NjkyY2EyNWMzMS90ZXh0cmVnaW9uOjU5ZWMxYTM3OTAwNzQwMmViMjkwMjQ2OTJjYTI1YzMxXzEwOTk1MTE2MjkyMTMy_cb891c06-755d-4a84-945d-f1f94e668fe1"
      unitRef="usd">31300000</us-gaap:Goodwill>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2MjY_d0389c0b-22b4-4e75-a6e2-24d7cbfe4b43">Balance Sheet Components&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Accounts Receivables, Net&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable, net consists of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&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: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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;144,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowance for credit losses and revenue reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(359)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,057)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Accounts receivable, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;104,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Allowance for Credit Losses and Revenue Reserve&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;s&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes to the allowance for credit losses and revenue reserves consists of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/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;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net changes to credit losses&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;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:10pt;font-weight:400;line-height:100%"&gt;2,957&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net changes to revenue reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(356)&lt;/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;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Write-offs, net&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;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:10pt;font-weight:400;line-height:100%"&gt;(3,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 24.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:112%"&gt;Includes $3.0&#160;million due to a contract termination as a result of United States government sanctions on Russia.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Prepaid Expenses and Other Current Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Prepaid expenses and other current assets consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&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: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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred 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:10pt;font-weight:400;line-height:100%"&gt;9,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deposits and other receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,787&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Property and Equipment, Net&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer hardware&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,002&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capitalized software development 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:10pt;font-weight:400;line-height:100%"&gt;38,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,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;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,467&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Total property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;130,939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56,354)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(50,878)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,061&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022 and 2021, no property and equipment was pledged as collateral. Depreciation expense, excluding the amortization of capitalized software development costs, was $14.0&#160;million, $14.0 million and $14.5 million for the fiscal years ended July&#160;31, 2022, 2021, and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized amortization of capitalized software development costs in cost of subscription and support revenue on the consolidated statements of operations of $6.3&#160;million, $3.4 million and $1.4 million during the fiscal years ended July&#160;31, 2022, 2021, and 2020 respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Goodwill and Intangible Assets, Net&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in the carrying amount of goodwill were as follows (in thousands):&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:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill, July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;340,877&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Addition &#x2014; HazardHub acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill, July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;372,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s intangible assets are amortized over their estimated useful lives. Intangible assets consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.489%"/&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: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;July 31, 2022&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;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Remaining Weighted-Average Useful Life (in years)&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;Cost&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;Cost&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,233&#160;&lt;/span&gt;&lt;/td&gt;&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer contracts and related relationships&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:10pt;font-weight:400;line-height:100%"&gt;3.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:10pt;font-weight:400;line-height:100%"&gt;23,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,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:10pt;font-weight:400;line-height:100%"&gt;35,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Partner 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:10pt;font-weight:400;line-height:100%"&gt;2.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:10pt;font-weight:400;line-height:100%"&gt;200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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:10pt;font-weight:400;line-height:100%"&gt;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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&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:10pt;font-weight:400;line-height:100%"&gt;4.1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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:10pt;font-weight:400;line-height:100%"&gt;1,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Order backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,439&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;120,957&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,743&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense was $14.1 million, $20.0 million, and $26.8&#160;million during the years ended July&#160;31, 2022, 2021, and 2020, respectively. The future amortization expense for existing intangible assets as of July&#160;31, 2022, based on their current useful lives, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fiscal year ending July 31,&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,572&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135&#160;&lt;/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 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total future amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,361&#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:24.75pt"&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;Other Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other assets consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&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: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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,085&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred 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:10pt;font-weight:400;line-height:100%"&gt;1,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Strategic equity investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,556&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify;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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company&#x2019;s other assets include strategic equity investments in privately-held companies in which the Company does not have a controlling interest or the ability to exert significant influence. The strategic investments consist of non-marketable equity securities that do not have readily determinable market values (Level 3). The Company records these strategic investments at cost less impairment and adjusts cost for subsequent observable changes in fair value. The Company invested $12.3&#160;million and $2.4&#160;million in new strategic equity investments during the fiscal year ended July&#160;31, 2022 and 2021, respectively. An impairment charge of $10.7&#160;million was recognized during the fiscal year ended July&#160;31, 2020. No impairment charge was recognized during the fiscal years ended July&#160;31, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the fiscal year ended July&#160;31, 2022, the Company&#x2019;s convertible debt investment was converted into equity shares due to a qualified equity financing event. The carrying value of the convertible debt investment was $1.1&#160;million comprised of principal and accrued interest. An unrealized gain in the form of implied interest income of $1.6&#160;million was recognized due to the conversion discount on the fair value of the shares. No unrealized gain or loss was recognized during the fiscal years ended July&#160;31, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Accrued Employee Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued employee compensation consists of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Bonus&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commission&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vacation&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;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:10pt;font-weight:400;line-height:100%"&gt;5,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,803&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Salaries, payroll taxes, 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:10pt;font-weight:400;line-height:100%"&gt;23,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Accrued employee compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102,137&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;In the first quarter of fiscal year 2022, the Company paid out accrued vacation for employees in certain countries upon adopting a non-accrued vacation policy effective September 1, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Other Current Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other current liabilities consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued 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:10pt;font-weight:400;line-height:100%"&gt;6,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,961&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,703&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMC0xLTEtOTU2NDI_70a76482-bdb9-4243-b5d1-f03895c9a9b7"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMC0xLTEtOTU2NDI_b09edf4a-605b-458f-9b89-191a6172e88f"&gt;Other current liabilities&lt;/span&gt;&lt;/span&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 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,648&#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:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NTY_e5f6d61c-f71a-46d5-b9a9-ab38b4a2bb7f">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable, net consists of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&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: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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;144,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowance for credit losses and revenue reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(359)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,057)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Accounts receivable, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;104,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AccountsReceivableGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjODQ0NTM5YmEwNzQ0YWI0YmZhMmNkYjcwMjA0MTM1NC90YWJsZXJhbmdlOmM4NDQ1MzliYTA3NDRhYjRiZmEyY2RiNzAyMDQxMzU0XzEtMS0xLTEtOTU2NDI_56b0bc91-6b9b-4220-8280-5064d4cbfca5"
      unitRef="usd">144156000</us-gaap:AccountsReceivableGross>
    <us-gaap:AccountsReceivableGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjODQ0NTM5YmEwNzQ0YWI0YmZhMmNkYjcwMjA0MTM1NC90YWJsZXJhbmdlOmM4NDQ1MzliYTA3NDRhYjRiZmEyY2RiNzAyMDQxMzU0XzEtMy0xLTEtOTU2NDI_225800bc-dbbd-406f-ab5e-d983af331729"
      unitRef="usd">105125000</us-gaap:AccountsReceivableGross>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjODQ0NTM5YmEwNzQ0YWI0YmZhMmNkYjcwMjA0MTM1NC90YWJsZXJhbmdlOmM4NDQ1MzliYTA3NDRhYjRiZmEyY2RiNzAyMDQxMzU0XzItMS0xLTEtOTU2NDI_c53c962a-a7b2-43ec-8cf5-1e56d217fc95"
      unitRef="usd">359000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjODQ0NTM5YmEwNzQ0YWI0YmZhMmNkYjcwMjA0MTM1NC90YWJsZXJhbmdlOmM4NDQ1MzliYTA3NDRhYjRiZmEyY2RiNzAyMDQxMzU0XzItMy0xLTEtOTU2NDI_098cd43b-8c5a-4d55-bcbe-b6ebf80ba034"
      unitRef="usd">1057000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AccountsReceivableNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjODQ0NTM5YmEwNzQ0YWI0YmZhMmNkYjcwMjA0MTM1NC90YWJsZXJhbmdlOmM4NDQ1MzliYTA3NDRhYjRiZmEyY2RiNzAyMDQxMzU0XzMtMS0xLTEtOTU2NDI_3bf8ae3e-76ee-4b6d-b048-5bfc9d296636"
      unitRef="usd">143797000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjODQ0NTM5YmEwNzQ0YWI0YmZhMmNkYjcwMjA0MTM1NC90YWJsZXJhbmdlOmM4NDQ1MzliYTA3NDRhYjRiZmEyY2RiNzAyMDQxMzU0XzMtMy0xLTEtOTU2NDI_d7b5c04c-82ec-48d2-8439-cbcd288b40ff"
      unitRef="usd">104068000</us-gaap:AccountsReceivableNet>
    <us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NzI_1fa02ac5-92a6-4226-bf65-ac2ad46d09b3">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes to the allowance for credit losses and revenue reserves consists of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/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;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net changes to credit losses&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;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:10pt;font-weight:400;line-height:100%"&gt;2,957&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net changes to revenue reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(356)&lt;/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;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Write-offs, net&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;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:10pt;font-weight:400;line-height:100%"&gt;(3,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 24.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:112%"&gt;Includes $3.0&#160;million due to a contract termination as a result of United States government sanctions on Russia.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo0Zjk1Y2YxMmY4OTI0YTdkODA3NmU0YTkzZmZkOWFiZS90YWJsZXJhbmdlOjRmOTVjZjEyZjg5MjRhN2Q4MDc2ZTRhOTNmZmQ5YWJlXzAtMS0xLTEtOTU2NDI_74f5b56f-d7b5-4622-8527-3209ba3ed514"
      unitRef="usd">1057000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo0Zjk1Y2YxMmY4OTI0YTdkODA3NmU0YTkzZmZkOWFiZS90YWJsZXJhbmdlOjRmOTVjZjEyZjg5MjRhN2Q4MDc2ZTRhOTNmZmQ5YWJlXzEtMS0xLTEtOTU2NDI_4bac19e3-0c37-4422-896a-9e726028bbb9"
      unitRef="usd">2957000</us-gaap:ProvisionForDoubtfulAccounts>
    <gwre:AccountsReceivableChangeInRevenueReserves
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo0Zjk1Y2YxMmY4OTI0YTdkODA3NmU0YTkzZmZkOWFiZS90YWJsZXJhbmdlOjRmOTVjZjEyZjg5MjRhN2Q4MDc2ZTRhOTNmZmQ5YWJlXzItMS0xLTEtOTU2NDI_d79c563d-91e0-495b-8458-70809e64ef3a"
      unitRef="usd">-356000</gwre:AccountsReceivableChangeInRevenueReserves>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo0Zjk1Y2YxMmY4OTI0YTdkODA3NmU0YTkzZmZkOWFiZS90YWJsZXJhbmdlOjRmOTVjZjEyZjg5MjRhN2Q4MDc2ZTRhOTNmZmQ5YWJlXzMtMS0xLTEtOTU2NDI_de5536f7-dfc9-4148-859c-883d2d7aa9c0"
      unitRef="usd">3299000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo0Zjk1Y2YxMmY4OTI0YTdkODA3NmU0YTkzZmZkOWFiZS90YWJsZXJhbmdlOjRmOTVjZjEyZjg5MjRhN2Q4MDc2ZTRhOTNmZmQ5YWJlXzQtMS0xLTEtOTU2NDI_1233be30-8e1b-4a12-948c-0fcb1fd86882"
      unitRef="usd">359000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ContractWithCustomerAssetAllowanceForCreditLossWriteoff
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzIxOTkwMjMyNTk1Mzc_c0840ee8-9e11-4f21-94a6-58e9e25e4721"
      unitRef="usd">3000000</us-gaap:ContractWithCustomerAssetAllowanceForCreditLossWriteoff>
    <us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NzQ_8358ab58-28f4-49a1-8491-8254779c6d02">Prepaid expenses and other current assets consist of the following (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&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: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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,273&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred 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:10pt;font-weight:400;line-height:100%"&gt;9,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deposits and other receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,787&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,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;/tr&gt;&lt;/table&gt;</us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzEtMS0xLTEtOTU2NDI_446109c1-a969-402e-9b98-3bc6b809f4aa"
      unitRef="usd">24273000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzEtMy0xLTEtOTU2NDI_87e28aeb-6cce-469c-9675-13106dca664d"
      unitRef="usd">20330000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:CapitalizedContractCostNetCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzItMS0xLTEtOTU2NDI_802b6441-1e11-4ecd-b367-020b2b980a32"
      unitRef="usd">14843000</us-gaap:CapitalizedContractCostNetCurrent>
    <us-gaap:CapitalizedContractCostNetCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzItMy0xLTEtOTU2NDI_411b5571-3648-451b-9e33-9f57a1d001c7"
      unitRef="usd">13365000</us-gaap:CapitalizedContractCostNetCurrent>
    <us-gaap:DeferredCostsCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzMtMS0xLTEtOTU2NDI_650e8360-d9eb-4e34-856c-e88701a24f7e"
      unitRef="usd">9969000</us-gaap:DeferredCostsCurrent>
    <us-gaap:DeferredCostsCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzMtMy0xLTEtOTU2NDI_bc5d824b-7ede-4c1f-84a3-2b6684601161"
      unitRef="usd">9247000</us-gaap:DeferredCostsCurrent>
    <gwre:DepositsAndOtherReceivablesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzQtMS0xLTEtOTU2NDI_2ab08982-550a-4e77-9e30-4303fe68665f"
      unitRef="usd">12138000</gwre:DepositsAndOtherReceivablesCurrent>
    <gwre:DepositsAndOtherReceivablesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzQtMy0xLTEtOTU2NDI_00f07d1c-4ab2-42d0-8c71-06d36ade53bf"
      unitRef="usd">9787000</gwre:DepositsAndOtherReceivablesCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzUtMS0xLTEtOTU2NDI_89eedfa1-21f4-4119-932e-12ba4f2807fc"
      unitRef="usd">61223000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpkOWRiNDk0ZTNiMzk0MjMyYTFjYTQzMjliMmI2MzMxMC90YWJsZXJhbmdlOmQ5ZGI0OTRlM2IzOTQyMzJhMWNhNDMyOWIyYjYzMzEwXzUtMy0xLTEtOTU2NDI_f710f216-c29d-40ba-9640-86c82d494c68"
      unitRef="usd">52729000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NTE_a0eeb790-bf96-4965-8e6a-b3e7e2686765">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer hardware&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Purchased software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,002&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capitalized software development 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:10pt;font-weight:400;line-height:100%"&gt;38,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,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;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,467&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Total property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,094&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;130,939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56,354)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(50,878)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,061&#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>
    <gwre:ComputerHardwareGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzEtMS0xLTEtOTU2NDI_e8de0a0e-f62e-41c3-ba90-5f92ec0c453a"
      unitRef="usd">14472000</gwre:ComputerHardwareGross>
    <gwre:ComputerHardwareGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzEtMy0xLTEtOTU2NDI_e7970f7b-5276-4fcc-8a73-47387212f5c1"
      unitRef="usd">19256000</gwre:ComputerHardwareGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzItMS0xLTEtOTU2NDI_ff7ffb24-853d-4f39-b575-dbf17f3dfdba"
      unitRef="usd">5124000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzItMy0xLTEtOTU2NDI_e83b3d76-ed3d-4a96-9a61-ff3e474008ac"
      unitRef="usd">6002000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzMtMS0xLTEtOTU2NDI_cab2a56a-9e07-4fbf-86ab-6686d7ecd46e"
      unitRef="usd">38724000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzMtMy0xLTEtOTU2NDI_120d5558-07b6-4e64-99af-0e6ec613004c"
      unitRef="usd">24025000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzQtMS0xLTEtOTU2NDI_8df6a805-377c-45d4-bb95-207b2ecb2fe3"
      unitRef="usd">8248000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzQtMy0xLTEtOTU2NDI_71ca6d93-5d0f-4f95-a03e-2d19c690e0ca"
      unitRef="usd">12214000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzUtMS0xLTEtOTU2NDI_d6ed9427-5139-4e65-82b3-273a8696974a"
      unitRef="usd">11467000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzUtMy0xLTEtOTU2NDI_478a9333-2812-4072-a944-b0d108d65a99"
      unitRef="usd">11482000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzYtMS0xLTEtOTU2NDI_e55b6d44-50db-4488-a4b6-c08f9d4fb576"
      unitRef="usd">59059000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzYtMy0xLTEtOTU2NDI_ae8bdbc6-6d6e-482c-859a-de51dd1394b8"
      unitRef="usd">57960000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzctMS0xLTEtOTU2NDI_eb1141bf-9c2f-4a3b-b794-c6643c12c6bd"
      unitRef="usd">137094000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzctMy0xLTEtOTU2NDI_ad16c257-83da-4124-8925-02f9d98bd607"
      unitRef="usd">130939000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzgtMS0xLTEtOTU2NDI_87ecbdc1-07e8-4294-af59-b8c90cc2ec88"
      unitRef="usd">56354000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzgtMy0xLTEtOTU2NDI_570f976e-bb10-4733-ac51-e1700aed319f"
      unitRef="usd">50878000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzktMS0xLTEtOTU2NDI_2ee4d40a-85ca-4e25-85fa-e8c9ab2b5d7c"
      unitRef="usd">80740000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpjYTQzYmJkNTI2ZjI0M2VlOTYyYzg4NmY5NWRiNDljMy90YWJsZXJhbmdlOmNhNDNiYmQ1MjZmMjQzZWU5NjJjODg2Zjk1ZGI0OWMzXzktMy0xLTEtOTU2NDI_b32af1bd-f4c9-4744-a5dc-21fb5a118158"
      unitRef="usd">80061000</us-gaap:PropertyPlantAndEquipmentNet>
    <gwre:PropertyAndEquipmentPledgedAsCollateral
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzUyMw_0e35b1e6-ebaf-47f0-b27b-a928c4fc44b7"
      unitRef="usd">0</gwre:PropertyAndEquipmentPledgedAsCollateral>
    <gwre:PropertyAndEquipmentPledgedAsCollateral
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzUyMw_ff0fd4df-4fc6-4d1e-911c-17af399c550d"
      unitRef="usd">0</gwre:PropertyAndEquipmentPledgedAsCollateral>
    <us-gaap:Depreciation
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzY3Mg_df99762d-4449-44ee-b5ed-78c9460e042f"
      unitRef="usd">14000000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzY3Ng_6b3e9a7a-96d5-4cce-91db-3a2f4691e545"
      unitRef="usd">14000000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzY4NA_7ca10f16-405c-408c-950f-87c1ba53b771"
      unitRef="usd">14500000</us-gaap:Depreciation>
    <us-gaap:AdjustmentForAmortization
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzkxNA_2c2d2cfa-da4d-4ba2-82cd-95091fed58e5"
      unitRef="usd">6300000</us-gaap:AdjustmentForAmortization>
    <us-gaap:AdjustmentForAmortization
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzkxOA_c6856b73-c6c0-473c-addf-a76d1939b264"
      unitRef="usd">3400000</us-gaap:AdjustmentForAmortization>
    <us-gaap:AdjustmentForAmortization
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzkyNQ_70549032-2a68-416d-845d-cfcc4ae6a30d"
      unitRef="usd">1400000</us-gaap:AdjustmentForAmortization>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4ODc0_e7fe3afa-d413-46ec-b857-475bcc42846a">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in the carrying amount of goodwill were as follows (in thousands):&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:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill, July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;340,877&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Addition &#x2014; HazardHub acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill, July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;372,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo4N2ZmZjVjMjhiYTQ0YTUwODlmNGFkNzZkYTk0YWZhMC90YWJsZXJhbmdlOjg3ZmZmNWMyOGJhNDRhNTA4OWY0YWQ3NmRhOTRhZmEwXzAtMS0xLTEtMTA5NjA2_853a9aa5-0c4d-44c2-835b-1a957ec5abc2"
      unitRef="usd">340877000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo4N2ZmZjVjMjhiYTQ0YTUwODlmNGFkNzZkYTk0YWZhMC90YWJsZXJhbmdlOjg3ZmZmNWMyOGJhNDRhNTA4OWY0YWQ3NmRhOTRhZmEwXzEtMS0xLTEtMTAzMzgw_30b872de-1962-43a7-8816-4b09d7140db9"
      unitRef="usd">31315000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:Goodwill
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo4N2ZmZjVjMjhiYTQ0YTUwODlmNGFkNzZkYTk0YWZhMC90YWJsZXJhbmdlOjg3ZmZmNWMyOGJhNDRhNTA4OWY0YWQ3NmRhOTRhZmEwXzItMS0xLTEtMTE2NDkx_33f14a50-1b8c-4117-a834-f96a72d768b3"
      unitRef="usd">372192000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NDU_55b2ca24-c234-4758-a011-3f099a3c06f7">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s intangible assets are amortized over their estimated useful lives. Intangible assets consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.489%"/&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: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;July 31, 2022&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;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Remaining Weighted-Average Useful Life (in years)&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;Cost&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;Cost&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,233&#160;&lt;/span&gt;&lt;/td&gt;&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer contracts and related relationships&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:10pt;font-weight:400;line-height:100%"&gt;3.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:10pt;font-weight:400;line-height:100%"&gt;23,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,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:10pt;font-weight:400;line-height:100%"&gt;35,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Partner 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:10pt;font-weight:400;line-height:100%"&gt;2.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:10pt;font-weight:400;line-height:100%"&gt;200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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:10pt;font-weight:400;line-height:100%"&gt;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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&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:10pt;font-weight:400;line-height:100%"&gt;4.1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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:10pt;font-weight:400;line-height:100%"&gt;1,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Order backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,439&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;120,957&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,743&#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:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i81eb2865bcbf45ada7c48e6912ed7928_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItMS0xLTEtOTU2NDI_41214f43-45ef-4ca4-938f-9e38931d67ec">P3Y6M</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i44a1b46fa6c14d919970ee89d5f9e128_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItMy0xLTEtOTU2NDI_322fc14b-8da0-4636-91dd-ccbc71fed3cf"
      unitRef="usd">38100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i44a1b46fa6c14d919970ee89d5f9e128_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItNS0xLTEtOTU2NDI_c001653f-0895-4346-905d-9bc1839491be"
      unitRef="usd">28826000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i44a1b46fa6c14d919970ee89d5f9e128_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItNy0xLTEtOTU2NDI_b4b1dced-8a2f-41b9-84db-05c7d1869cca"
      unitRef="usd">9274000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i986157b4cb884b289bfe15fd07401439_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItOS0xLTEtOTU2NDI_9429628e-ae6e-4cfe-826f-a2c160eb489c"
      unitRef="usd">93600000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i986157b4cb884b289bfe15fd07401439_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItMTEtMS0xLTk1NjQy_e0334e40-dd14-4b39-affb-b4c847dff5bf"
      unitRef="usd">86367000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i986157b4cb884b289bfe15fd07401439_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzItMTMtMS0xLTk1NjQy_96c23620-1979-419d-a61c-d05825e35c01"
      unitRef="usd">7233000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i532420a9a30540cabb83192e37078557_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtMS0xLTEtOTU2NDI_7fc8d83a-6eb6-4530-9e8b-f472db5dbb04">P3Y6M</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i19a0cd6fc05d434babc7cd1301f7335a_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtMy0xLTEtOTU2NDI_8709e1fa-193f-4089-bece-6d5a47563a6d"
      unitRef="usd">23100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i19a0cd6fc05d434babc7cd1301f7335a_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtNS0xLTEtOTU2NDI_2009ac49-28e6-4d0d-970d-7f25796b39cd"
      unitRef="usd">12653000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i19a0cd6fc05d434babc7cd1301f7335a_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtNy0xLTEtOTU2NDI_048ba364-2345-4452-ac2d-2dfdc0b19a3a"
      unitRef="usd">10447000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i66bd3e1ecc3b4e149860a4d9989bc125_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtOS0xLTEtOTU2NDI_0d007307-fd0d-4bea-a928-e4eb69007420"
      unitRef="usd">35700000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i66bd3e1ecc3b4e149860a4d9989bc125_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtMTEtMS0xLTk1NjQy_b8dd4ec8-9aab-4155-b0e7-84f2de2f757b"
      unitRef="usd">24432000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i66bd3e1ecc3b4e149860a4d9989bc125_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzMtMTMtMS0xLTk1NjQy_73fe0e22-d018-4f17-8721-3ae948266855"
      unitRef="usd">11268000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ib07c1ad2c4d74b69a41c5f3b93c64952_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtMS0xLTEtOTU2NDI_984bde22-7f71-4b02-b641-5ab662b48907">P2Y8M12D</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ia78e980616a943639677cd122e770764_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtMy0xLTEtOTU2NDI_5babdf82-6dcb-4beb-ac8a-014be48b8f1c"
      unitRef="usd">200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ia78e980616a943639677cd122e770764_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtNS0xLTEtOTU2NDI_2a2a77bf-59ac-4010-9ebc-88a8d73bc9eb"
      unitRef="usd">141000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ia78e980616a943639677cd122e770764_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtNy0xLTEtOTU2NDI_b45c6aa5-4692-40c6-8b2a-9bae3a16ab4d"
      unitRef="usd">59000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3a5af96ca14d4508b386def177b5f992_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtOS0xLTEtOTU2NDI_638142c6-a206-49ad-b08c-75d0a1734e16"
      unitRef="usd">200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i3a5af96ca14d4508b386def177b5f992_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtMTEtMS0xLTk1NjQy_2b73e932-e867-4403-b36e-ef846f598cfe"
      unitRef="usd">119000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i3a5af96ca14d4508b386def177b5f992_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzQtMTMtMS0xLTk1NjQy_a9b05dd0-52c6-4f49-aa73-cd505cd72e89"
      unitRef="usd">81000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i4a3b36d69474465ea902ae939f3233d6_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtMS0xLTEtOTU2NDI_2914c092-61b9-4d3a-82cb-cad224bca3f8">P4Y1M6D</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ib332028cbaf04091bdada11be6c1ec91_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtMy0xLTEtOTU2NDI_e43f2b64-bc59-4f84-bb28-cf97c29b7fd9"
      unitRef="usd">3400000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ib332028cbaf04091bdada11be6c1ec91_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtNS0xLTEtOTU2NDI_5a5d1a68-6555-4b65-9e14-2d55c534bb1e"
      unitRef="usd">1819000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ib332028cbaf04091bdada11be6c1ec91_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtNy0xLTEtOTU2NDI_3ecfcc22-b032-406a-ae0b-0e3024e95544"
      unitRef="usd">1581000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i6a1385684d4d41af8c787f69eaf75c03_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtOS0xLTEtOTU2NDI_86b946e5-cd05-4d85-b05a-0b60388f01f9"
      unitRef="usd">2500000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i6a1385684d4d41af8c787f69eaf75c03_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtMTEtMS0xLTk1NjQy_2f1f1204-8f7c-42b3-80b0-aee896949cfd"
      unitRef="usd">1339000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i6a1385684d4d41af8c787f69eaf75c03_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzUtMTMtMS0xLTk1NjQy_b5912166-6dcb-4f42-a217-3b743d4d4be4"
      unitRef="usd">1161000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i27d9171d1833494f9f2ec58587d26f84_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzYtMy0xLTEtOTU2NDI_f373e1c8-3e18-43da-afb4-29f2d35eac27"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i27d9171d1833494f9f2ec58587d26f84_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzYtNS0xLTEtOTU2NDI_f8da7f2b-8621-4d58-9b06-93922bc5a769"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i27d9171d1833494f9f2ec58587d26f84_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzYtNy0xLTEtOTU2NDI_9a282f4e-4f05-460f-9a45-efc5586db02c"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i437ddb73e66b4c49854dc5d6b842ef0e_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzYtOS0xLTEtOTU2NDI_dfa0af41-152f-40f0-a92c-4cca6cf95554"
      unitRef="usd">8700000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i437ddb73e66b4c49854dc5d6b842ef0e_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzYtMTEtMS0xLTk1NjQy_0c09cf37-a457-4b03-90ba-0740f10c1e5d"
      unitRef="usd">8700000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i437ddb73e66b4c49854dc5d6b842ef0e_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzYtMTMtMS0xLTk1NjQy_afa99c48-32b3-46eb-9449-36e144c2690d"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctMS0xLTEtOTU2NDI_6e74ee1f-0065-4bfd-a23c-f9f03a6a3410">P3Y7M6D</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctMy0xLTEtOTU2NDI_55e042f0-4b8a-4059-a542-8364d4595698"
      unitRef="usd">64800000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctNS0xLTEtOTU2NDI_b438de87-49da-4a9a-b43e-b4ae111618f4"
      unitRef="usd">43439000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctNy0xLTEtOTU2NDI_098f8278-ad24-4b79-b613-26bc3199255b"
      unitRef="usd">21361000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctOS0xLTEtOTU2NDI_d728d4a9-1598-451f-8b99-7d696af50b58"
      unitRef="usd">140700000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctMTEtMS0xLTk1NjQy_cdb77f4e-7039-4c1e-82ab-f5d953855734"
      unitRef="usd">120957000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTozZWI4YTEzYTRhOTQ0YTFkODllMGM3NzY3MWQ2MzViNy90YWJsZXJhbmdlOjNlYjhhMTNhNGE5NDRhMWQ4OWUwYzc3NjcxZDYzNWI3XzctMTMtMS0xLTk1NjQy_fc21e5c4-7bb3-4828-9f1b-3f021ecdfb48"
      unitRef="usd">19743000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEyOTQ_a43265f7-493a-4823-9632-85f52323d250"
      unitRef="usd">14100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEyOTg_152ce969-947d-47e1-857b-11e4178c3bc4"
      unitRef="usd">20000000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEzMDY_c6c36ca5-f30a-4271-9899-0ad094e0a758"
      unitRef="usd">26800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NDc_1678f3fc-8400-4ff9-95cd-3ba95f994cde">The future amortization expense for existing intangible assets as of July&#160;31, 2022, based on their current useful lives, is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fiscal year ending July 31,&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,572&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135&#160;&lt;/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 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total future amortization expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzEtMi0xLTEtOTU2NDI_1ad48c96-55a3-4a5e-b56a-1287de36ee7d"
      unitRef="usd">6888000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzItMi0xLTEtOTU2NDI_2444e63f-ba90-4dad-bf79-ab8dc2d06217"
      unitRef="usd">5468000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzMtMi0xLTEtOTU2NDI_57037efa-c047-407f-903c-a7641e22e4c3"
      unitRef="usd">5026000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzQtMi0xLTEtOTU2NDI_6a74350e-1aec-4108-a598-c9b73d5e6488"
      unitRef="usd">3572000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzUtMi0xLTEtOTU2NDI_6d5d9124-9195-4475-a9ec-5a3af3ffc427"
      unitRef="usd">272000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzYtMi0xLTEtOTU2NDI_7ba105cb-f966-44df-a809-515cd5ab6f46"
      unitRef="usd">135000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MTc4OTA2ZWViOTE0NzY5YjlmNzYzZTc1MmZiM2U1MS90YWJsZXJhbmdlOjkxNzg5MDZlZWI5MTQ3NjliOWY3NjNlNzUyZmIzZTUxXzctMi0xLTEtOTU2NDI_2685f3ce-80a7-440b-87f9-6961e86ffa39"
      unitRef="usd">21361000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:ScheduleOfOtherAssetsNoncurrentTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NDg_975c094e-78c6-4a1b-ba46-85a18da163f5">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other assets consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&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: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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,085&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred 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:10pt;font-weight:400;line-height:100%"&gt;1,256&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Strategic equity investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,556&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,732&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;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:ScheduleOfOtherAssetsNoncurrentTextBlock>
    <us-gaap:PrepaidExpenseNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzEtMS0xLTEtOTU2NDI_74390efc-8784-4e4a-a893-d528ec9bfe20"
      unitRef="usd">3085000</us-gaap:PrepaidExpenseNoncurrent>
    <us-gaap:PrepaidExpenseNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzEtMy0xLTEtOTU2NDI_cc0193fe-8f1b-4bda-8443-3094ca9dd0de"
      unitRef="usd">3276000</us-gaap:PrepaidExpenseNoncurrent>
    <us-gaap:CapitalizedContractCostNetNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzItMS0xLTEtOTU2NDI_42125f00-4577-4b06-8e40-4e2b5d0d8b58"
      unitRef="usd">29392000</us-gaap:CapitalizedContractCostNetNoncurrent>
    <us-gaap:CapitalizedContractCostNetNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzItMy0xLTEtOTU2NDI_2f620a8b-d333-42aa-ba25-cb445547e6c0"
      unitRef="usd">28870000</us-gaap:CapitalizedContractCostNetNoncurrent>
    <us-gaap:DeferredCosts
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzMtMS0xLTEtOTU2NDI_60dd9043-86fb-42aa-8dfa-8bf859bbde89"
      unitRef="usd">1256000</us-gaap:DeferredCosts>
    <us-gaap:DeferredCosts
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzMtMy0xLTEtOTU2NDI_7f244293-2cdb-498f-bbca-0d38f82a121a"
      unitRef="usd">2777000</us-gaap:DeferredCosts>
    <gwre:StrategicInvestmentsNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzQtMS0xLTEtOTU2NDI_530371fa-ebf9-40eb-ac3f-09dbac87cef0"
      unitRef="usd">18023000</gwre:StrategicInvestmentsNoncurrent>
    <gwre:StrategicInvestmentsNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzQtMy0xLTEtOTU2NDI_af577c25-cf08-4752-b870-880a3a698bb8"
      unitRef="usd">3556000</gwre:StrategicInvestmentsNoncurrent>
    <us-gaap:OtherAssetsMiscellaneousNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzUtMS0xLTEtMTAwMDc4_0f427771-ecc1-491b-93a6-c6b2f8d716df"
      unitRef="usd">4976000</us-gaap:OtherAssetsMiscellaneousNoncurrent>
    <us-gaap:OtherAssetsMiscellaneousNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzUtMy0xLTEtMTAwMDgy_311b3eda-c9fd-41dc-bb9e-de86bce0c7cf"
      unitRef="usd">0</us-gaap:OtherAssetsMiscellaneousNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzUtMS0xLTEtOTU2NDI_253c359f-4e56-4dcd-97b2-fd6dd97a9bd5"
      unitRef="usd">56732000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo5MjhhOGQwMjdmYWE0OGU0OGNjNjhmN2Y3MDA3NzRjNy90YWJsZXJhbmdlOjkyOGE4ZDAyN2ZhYTQ4ZTQ4Y2M2OGY3ZjcwMDc3NGM3XzUtMy0xLTEtOTU2NDI_b36544c8-e855-4eef-96ba-7722d5006fb3"
      unitRef="usd">38479000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:InvestmentOwnedAtCost
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzIwNTU_14e4c2d0-548e-4019-8f45-96d7649a862b"
      unitRef="usd">12300000</us-gaap:InvestmentOwnedAtCost>
    <us-gaap:InvestmentOwnedAtCost
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzIwNjI_ccf6f95a-b6ce-4606-ae8c-e9fca2d44975"
      unitRef="usd">2400000</us-gaap:InvestmentOwnedAtCost>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4ODc2_a1654191-1a65-4ba6-a137-58e58b4e16c0"
      unitRef="usd">10700000</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4OTI3_087324b1-3f57-4da0-a0ec-1ebd5bf7c998"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4OTI3_d338361c-bba8-44a6-8296-4881ee0c5584"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:ConvertibleDebt
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4ODkx_2f68b1fc-a363-4b4b-a15c-f1217e3fd7e9"
      unitRef="usd">1100000</us-gaap:ConvertibleDebt>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4OTA1_753a82de-0091-4fad-b1fc-d0ae1f854b5f"
      unitRef="usd">1600000</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4OTE4_539e1059-66c6-40d2-a409-abcd5dd0f741"
      unitRef="usd">0</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzEwOTk1MTE2Mjg4OTE4_9dee33e6-208b-404d-91de-631474115c3c"
      unitRef="usd">0</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <gwre:AccruedEmployeeCompensationTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2NTQ_72562671-9f12-4dcd-afad-33c7343e8ce9">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Accrued Employee Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued employee compensation consists of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Bonus&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commission&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vacation&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;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:10pt;font-weight:400;line-height:100%"&gt;5,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,803&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Salaries, payroll taxes, 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:10pt;font-weight:400;line-height:100%"&gt;23,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Accrued employee compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102,137&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;In the first quarter of fiscal year 2022, the Company paid out accrued vacation for employees in certain countries upon adopting a non-accrued vacation policy effective September 1, 2021.&lt;/span&gt;&lt;/div&gt;</gwre:AccruedEmployeeCompensationTableTextBlock>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzEtMS0xLTEtOTU2NDI_33da3204-dbc3-4bb6-9403-ffef7ddeea1a"
      unitRef="usd">55206000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzEtMy0xLTEtOTU2NDI_68264ef2-0c4f-46f1-878b-6045b93f961d"
      unitRef="usd">48414000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzItMS0xLTEtOTU2NDI_16e320b2-c72c-4634-b302-104594f4375d"
      unitRef="usd">6247000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzItMy0xLTEtOTU2NDI_beddb397-dc9b-4741-8bb6-e5ad401ec72d"
      unitRef="usd">11271000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:AccruedVacationCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzMtMS0xLTEtOTU2NDI_a91e06de-491b-45fb-a255-980c75f62c19"
      unitRef="usd">5728000</us-gaap:AccruedVacationCurrent>
    <us-gaap:AccruedVacationCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzMtMy0xLTEtOTU2NDI_eb1055c5-2035-43cf-85b4-e07d33e84952"
      unitRef="usd">23803000</us-gaap:AccruedVacationCurrent>
    <gwre:OtherPayrollAccrualsCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzQtMS0xLTEtOTU2NDI_08a97e44-e04a-41ae-9d6e-ddcb90c79fb0"
      unitRef="usd">23781000</gwre:OtherPayrollAccrualsCurrent>
    <gwre:OtherPayrollAccrualsCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzQtMy0xLTEtOTU2NDI_4144931a-0f08-47cc-bcb2-4c7e2a4b7dff"
      unitRef="usd">18649000</gwre:OtherPayrollAccrualsCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzUtMS0xLTEtOTU2NDI_560acf77-992f-4215-846c-5facec9538fb"
      unitRef="usd">90962000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTpiOTQ0ZmZlZjc2ZTg0NjcxOThiZmE0ZDYzZTcyYjIxNi90YWJsZXJhbmdlOmI5NDRmZmVmNzZlODQ2NzE5OGJmYTRkNjNlNzJiMjE2XzUtMy0xLTEtOTU2NDI_e66d727d-2365-4afc-9977-08e157603135"
      unitRef="usd">102137000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherCurrentLiabilitiesTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90ZXh0cmVnaW9uOmEwMmU3NjQ1ZThmNDRjM2VhOTUzOWM3ZmU1Y2YxNDhjXzI2MzY_25ee2f5f-5d8a-4eda-a215-5b22c8fb19f5">Other current liabilities consist of the following (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued royalties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued 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:10pt;font-weight:400;line-height:100%"&gt;6,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,961&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,703&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMC0xLTEtOTU2NDI_70a76482-bdb9-4243-b5d1-f03895c9a9b7"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMC0xLTEtOTU2NDI_b09edf4a-605b-458f-9b89-191a6172e88f"&gt;Other current liabilities&lt;/span&gt;&lt;/span&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 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,648&#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:OtherCurrentLiabilitiesTableTextBlock>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzEtMS0xLTEtOTU2NDI_56e5a932-c6a9-44d0-b90f-09a559d8152f"
      unitRef="usd">12238000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzEtMy0xLTEtOTU2NDI_f8f3c265-0f2d-4ddd-8022-8952b57d3a45"
      unitRef="usd">11624000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:AccruedRoyaltiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzItMS0xLTEtOTU2NDI_1df4933d-0043-43c8-97b0-e8a61494d28a"
      unitRef="usd">10575000</us-gaap:AccruedRoyaltiesCurrent>
    <us-gaap:AccruedRoyaltiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzItMy0xLTEtOTU2NDI_7beae45e-d7c2-4ac6-86d0-a567f9a8ce28"
      unitRef="usd">7525000</us-gaap:AccruedRoyaltiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzMtMS0xLTEtOTU2NDI_fd2a7ed0-2bcd-432c-9b0b-a0938f54b60e"
      unitRef="usd">6566000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzMtMy0xLTEtOTU2NDI_5014c021-55b7-4208-87b4-31c34bc3c777"
      unitRef="usd">6796000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzQtMS0xLTEtOTU2NDI_26692da0-f90f-4c5b-9152-dc31e1cb155e"
      unitRef="usd">5961000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzQtMy0xLTEtOTU2NDI_ecf43e44-c5ef-41f4-8105-29ed22872293"
      unitRef="usd">5703000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMS0xLTEtOTU2NDI_418b29ce-2a50-45e9-a9bf-126b0f63ff50"
      unitRef="usd">35340000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMDkvZnJhZzphMDJlNzY0NWU4ZjQ0YzNlYTk1MzljN2ZlNWNmMTQ4Yy90YWJsZTo3NzFhYjBjMTE1NDc0YjM0YTFjYjY3ZmNkMmNhMzkzNy90YWJsZXJhbmdlOjc3MWFiMGMxMTU0NzRiMzRhMWNiNjdmY2QyY2EzOTM3XzUtMy0xLTEtOTU2NDI_5e7d46ec-ba9a-43ec-9287-a8116d9c898d"
      unitRef="usd">31648000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90ZXh0cmVnaW9uOjY1ZGM0MjM4ZWM3NzQ5NWY4NThjNDM2OTYzODU4MWRlXzE3MDE_ceb22338-1deb-49d4-b4de-2abeb9d6ae40">Net Income (Loss) Per Share&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company calculates basic earnings per share by dividing the net income (loss) by the weighted average number of shares of common stock outstanding for the period. The diluted earnings per share is computed by giving effect to all potentially dilutive common stock equivalents outstanding for the period using the treasury stock method. For purposes of this calculation, options to purchase common stock, Stock Awards, and the Convertible Senior Notes are considered to be common stock equivalents.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth the computation of the Company&#x2019;s basic and diluted net income (loss) per share for the years ended July&#160;31, 2022, 2021, and 2020 (in thousands, except share and per share amounts):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#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:10pt;font-weight:700;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(180,431)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(66,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,198)&lt;/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:10pt;font-weight:700;line-height:100%"&gt;Net income (loss) per 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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic and 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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2.16)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.79)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.33)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Denominator:&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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares used in computing net income (loss) per 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 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic and diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,569,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,577,375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,855,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following weighted average shares of potential common stock were excluded from the computation of diluted net income (loss) per share for the periods presented because including them would have been anti-dilutive:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:3pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;font-weight:700;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,980&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,410&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,836,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,737,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,559,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Convertible senior notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Since the Company has the intent and ability to settle the principal amount of the Convertible Senior Notes in cash and any excess in shares of the Company&#x2019;s common stock, the Company uses the treasury stock method for calculating any potential dilutive effect of the conversion spread on net income per share, if applicable. The conversion spread will have a dilutive impact on net income (loss) per share when the average market price of the Company&#x2019;s common stock for a given period exceeds the conversion price of $113.75 per share for the Convertible Senior Notes. Except for the first quarter in fiscal year 2022 and the second quarter in fiscal year 2021, the average market price of the Company&#x2019;s common stock did not exceed the conversion price.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90ZXh0cmVnaW9uOjY1ZGM0MjM4ZWM3NzQ5NWY4NThjNDM2OTYzODU4MWRlXzE3MTM_adb14afd-cee7-413a-9328-4d8ea1e18896">The Company calculates basic earnings per share by dividing the net income (loss) by the weighted average number of shares of common stock outstanding for the period. The diluted earnings per share is computed by giving effect to all potentially dilutive common stock equivalents outstanding for the period using the treasury stock method. For purposes of this calculation, options to purchase common stock, Stock Awards, and the Convertible Senior Notes are considered to be common stock equivalents.</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90ZXh0cmVnaW9uOjY1ZGM0MjM4ZWM3NzQ5NWY4NThjNDM2OTYzODU4MWRlXzE2OTk_72bfc9b6-7ade-4b78-bd0d-d10573f25cae">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth the computation of the Company&#x2019;s basic and diluted net income (loss) per share for the years ended July&#160;31, 2022, 2021, and 2020 (in thousands, except share and per share amounts):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#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:10pt;font-weight:700;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(180,431)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(66,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,198)&lt;/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:10pt;font-weight:700;line-height:100%"&gt;Net income (loss) per 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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic and 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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2.16)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.79)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.33)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Denominator:&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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares used in computing net income (loss) per 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 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic and diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,569,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,577,375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,855,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:ProfitLoss
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzMtMS0xLTEtOTU2NDI_94a0dab4-459d-47e7-97a8-1475154856c4"
      unitRef="usd">-180431000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzMtMy0xLTEtOTU2NDI_559ecca3-b664-4c35-9385-c5ad823bb8fc"
      unitRef="usd">-66507000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzMtNS0xLTEtOTU2NDI_f12c9e2b-e1c9-437d-8815-bed709a80445"
      unitRef="usd">-27198000</us-gaap:ProfitLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzUtMS0xLTEtOTU2NDI_4e1d5bed-9138-4cf0-87dc-d71267b4d9c8"
      unitRef="usdPerShare">-2.16</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzUtMS0xLTEtOTU2NDI_5cabaea9-8ab2-46b5-ac71-8a82219d45e4"
      unitRef="usdPerShare">-2.16</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzUtMy0xLTEtOTU2NDI_73e7ae46-d38f-4df5-9724-83cc7838b8ad"
      unitRef="usdPerShare">-0.79</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzUtMy0xLTEtOTU2NDI_c8ff1b40-589b-452b-ad92-49e16b8834e1"
      unitRef="usdPerShare">-0.79</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzUtNS0xLTEtOTU2NDI_314fc19e-9189-4182-a852-1bf9c47469c9"
      unitRef="usdPerShare">-0.33</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzUtNS0xLTEtOTU2NDI_691379a8-0980-402a-ba5a-230470e31027"
      unitRef="usdPerShare">-0.33</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzktMS0xLTEtOTU2NDI_3c68cf20-7019-4a45-8b7b-cdd804c95a67"
      unitRef="shares">83569517</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzktMS0xLTEtOTU2NDI_82615b35-203a-4767-a673-35d414bab82c"
      unitRef="shares">83569517</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzktMy0xLTEtOTU2NDI_8a192609-322c-403b-898f-7e0ad549db3f"
      unitRef="shares">83577375</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzktMy0xLTEtOTU2NDI_ddab1d44-99fe-4b32-8410-565aa5ee1d72"
      unitRef="shares">83577375</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzktNS0xLTEtOTU2NDI_ed0e2d36-1879-4958-a9bb-a2565c50d062"
      unitRef="shares">82855392</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTphMmI0Y2JlZjZiZGE0N2M4ODliMWMyMmY5NWNkN2NlZC90YWJsZXJhbmdlOmEyYjRjYmVmNmJkYTQ3Yzg4OWIxYzIyZjk1Y2Q3Y2VkXzktNS0xLTEtOTU2NDI_f2750c2b-a6a8-4337-a7e4-1ed755e98d0f"
      unitRef="shares">82855392</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90ZXh0cmVnaW9uOjY1ZGM0MjM4ZWM3NzQ5NWY4NThjNDM2OTYzODU4MWRlXzE2OTU_d510953e-412f-499f-9e79-08b424abf632">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following weighted average shares of potential common stock were excluded from the computation of diluted net income (loss) per share for the periods presented because including them would have been anti-dilutive:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:3pt;margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;font-weight:700;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,206&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,980&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,410&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,836,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,737,597&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,559,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Convertible senior notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i6731a291cd89482ab121c33f819ed25a_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzItMS0xLTEtOTU2NDI_8bd15f5c-bf0e-46b6-b38c-58c62604203b"
      unitRef="shares">24206</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i59860a02dd194c988fe862c611986d68_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzItMy0xLTEtOTU2NDI_5bf95c34-c993-48f9-8c2f-50243e926be2"
      unitRef="shares">37980</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ib52210ce4513418aaec00e933ddf7e27_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzItNS0xLTEtOTU2NDI_678b117f-6bea-465f-97e4-f87936b2ac7d"
      unitRef="shares">161410000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i4e3422257fcd4e56b32d15d3f54f404a_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzMtMS0xLTEtOTU2NDI_03250bbf-cf30-42d8-8eb2-e179c6f0b866"
      unitRef="shares">1836455</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i69721685529a4525a5eb48f8cb40deca_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzMtMy0xLTEtOTU2NDI_fbb0ee31-9567-49c1-b7f3-d8feb981ad72"
      unitRef="shares">2737597</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="id4db6f6d227b44dc8fe288a990f0f87b_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzMtNS0xLTEtOTU2NDI_ab7aeb93-e69c-4d0a-aea2-15929235a7fb"
      unitRef="shares">2559214000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i976416d7c697480db3447544cb1f905a_D20210801-20220731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzQtMS0xLTEtOTU2NDI_bc51d338-c852-4450-8289-3b98f495a2f2"
      unitRef="shares">33417</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i632fe932cb4d49f59450925d24542142_D20200801-20210731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzQtMy0xLTEtOTU2NDI_caea06b6-e5f9-4a1d-80c7-cee476978ac0"
      unitRef="shares">52430</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i27a3e4dfd79a45c493a97593f8b0ccb6_D20190801-20200731"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90YWJsZTo4N2RmOWQ1MTBmODA0ZTYwOTA3NTMzMTNjMDM5NDIxZi90YWJsZXJhbmdlOjg3ZGY5ZDUxMGY4MDRlNjA5MDc1MzMxM2MwMzk0MjFmXzQtNS0xLTEtOTU2NDI_7ab27ee6-0ffd-4c05-8fe7-bb135468b8b9"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTIvZnJhZzo2NWRjNDIzOGVjNzc0OTVmODU4YzQzNjk2Mzg1ODFkZS90ZXh0cmVnaW9uOjY1ZGM0MjM4ZWM3NzQ5NWY4NThjNDM2OTYzODU4MWRlXzE1MTA_06e3701d-0ee4-4402-a5de-02959dbd7e90"
      unitRef="usdPerShare">113.75</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzU1MjI_44a6c0d5-98ce-4a2b-bc61-5c57ee0b4620">Convertible Senior Notes&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2018, the Company offered and sold $400.0 million aggregate principal amount of its 1.25% Convertible Senior Notes due 2025. The Convertible Senior Notes were issued in accordance with the Indenture, dated as of March 13, 2018, between the Company and U.S. Bank National Association, as trustee  (the &#x201c;Trustee&#x201d;) (the &#x201c;Base Indenture&#x201d;), as amended and supplemented by the First Supplemental Indenture, dated as of March 13, 2018, between the Company and the Trustee (together with the Base Indenture, the &#x201c;Indenture&#x201d;). The net proceeds from the issuance of the Convertible Senior Notes were $387.2 million, after deducting issuance costs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Convertible Senior Notes are unsecured obligations of the Company with interest payable semi-annually in arrears at a rate of 1.25% per year, on March 15th and September 15th of each year. The Convertible Senior Notes will mature on March 15, 2025 unless repurchased, redeemed, or converted prior to such date. Prior to the close of business on the business day immediately preceding October 15, 2024, the Convertible Senior Notes are convertible at the option of holders during certain periods, upon satisfaction of certain conditions. On or after October 15, 2024, the Convertible Senior Notes are convertible at any time until the close of business on the second scheduled trading day immediately preceding the maturity date. The Convertible Senior Notes will have an initial conversion rate of 8.7912 shares of common stock per $1,000 principal (equivalent to an initial conversion price of approximately $113.75 per share of the Company&#x2019;s common stock). The conversion rate is subject to customary adjustments upon the occurrence of certain events but will not be adjusted for any accrued and unpaid interest. Upon conversion, the Company will pay or deliver, as the case may be, cash, shares of its common stock or a combination of cash and shares of its common stock, at its election. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company may redeem the Convertible Senior Notes, at its option, on or after March&#160;20, 2022, at a redemption price equal to 100% of the principal amount thereof, plus accrued and unpaid interest if the last reported sale price of the Company&#x2019;s common stock has been at least 130% of the conversion price then in effect for at least 20 trading days (whether or not consecutive), including at least one of the three trading days immediately preceding the date on which the Company provides notice of redemption, during any 30 consecutive trading day period ending on, and including, the trading day immediately preceding the date on which the Company provides notice of redemption. No sinking fund is provided for the Convertible Senior Notes. Upon the occurrence of a fundamental change (as defined in the Indenture) prior to the maturity date, holders may require the Company to repurchase all or a portion of the Convertible Senior Notes for cash at a price equal to 100% of the principal amount of the notes to be repurchased, plus any accrued and unpaid interest to, but excluding, the fundamental change repurchase date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Convertible Senior Notes rank senior in right of payment to any of the Company&#x2019;s indebtedness that is expressly subordinated in right of payment to the Convertible Senior Notes, and equal in right of payment to any of its indebtedness that is not so subordinated. The Convertible Senior Notes are effectively junior in right of payment to any of the Company&#x2019;s secured indebtedness to the extent of the value of the assets securing such indebtedness; and structurally junior to all indebtedness and other liabilities (including trade payables) and any preferred equity of its current or future subsidiaries.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The net carrying value of the liability component, unamortized debt discount, and unamortized debt issuance costs of the Convertible Senior Notes was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.027%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.031%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.553%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.361%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.555%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Principal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;400,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;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;400,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less unamortized:&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,198&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,531&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net carrying amount&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;358,216&#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;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343,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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effective interest rate of the Convertible Senior Notes is 5.53%. The following table sets forth the interest expense recognized related to the Convertible Senior Notes (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of debt issuance 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:10pt;font-weight:400;line-height:100%"&gt;1,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,181&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,391&#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;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&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;Capped Call&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2018, the Company paid $37.2 million to purchase capped calls with certain financial institutions pursuant to capped call confirmations (the &#x201c;Capped Calls&#x201d;). The Capped Calls have an initial strike price of $113.75 per share, subject to certain adjustments, which corresponds to the initial conversion price of the Convertible Senior Notes. The Capped Calls have initial cap prices of $153.13 per share, subject to certain adjustments. The Capped Calls cover, subject to anti-dilution adjustments, 3.5 million shares of common stock. By entering into the Capped Calls, the Company expects to reduce the potential dilution to its common stock (or, in the event the conversion is settled in cash, to reduce its cash payment obligation) in the event that at the time of conversion its stock price exceeds the conversion price under the Convertible Senior Notes. The Capped Calls are subject to either adjustment or termination upon the occurrence of specified extraordinary events affecting the Company, including a merger event, tender offer, and a nationalization, insolvency, or delisting involving the Company. Additionally, the Capped Calls are subject to certain specified additional disruption events that may give rise to a termination of the Capped Calls, including change in law, insolvency filing, and hedging disruptions. The Capped Calls were recorded in the period purchased as a reduction of the Company&#x2019;s additional paid-in capital in the accompanying consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="ifb2f7d8a1ce84d0f9517fc7265088c36_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4Xzc4_a36576ce-b120-4b90-9299-19e19c4ad0a3"
      unitRef="usd">400000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ifb2f7d8a1ce84d0f9517fc7265088c36_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzExNQ_471cc212-5fcd-4c5b-9600-9b21a8a21418"
      unitRef="number">0.0125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="ia89b213ad47a40669837099e343d27e0_D20180301-20180331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzYxOA_7be9de66-aaa8-4efa-bd79-67b3717c8684"
      unitRef="usd">387200000</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ifb2f7d8a1ce84d0f9517fc7265088c36_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4Xzc4Nw_cf0c65ea-53bc-4935-89d8-d4ae77560f90"
      unitRef="number">0.0125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <gwre:DebtInstrumentConvertibleNumberofSharesIssuablePer1000PrincipalConverted
      contextRef="i5313e5a3b7e74e20b9375595a9ee15dc_D20180301-20180331"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzE0NTY_9b1a6041-7533-40c0-aeba-1f1f51d3b98b"
      unitRef="shares">8.7912</gwre:DebtInstrumentConvertibleNumberofSharesIssuablePer1000PrincipalConverted>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="iedfad112363246259da42c2ae5a609d7_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzE1NjM_00935a49-5501-4acf-a96c-1072b4c6acbb"
      unitRef="usdPerShare">113.75</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:DebtInstrumentRedemptionPricePercentage
      contextRef="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzIwNzA_dcdb3eb8-b7b6-4c83-982a-8a836e69e143"
      unitRef="number">1</us-gaap:DebtInstrumentRedemptionPricePercentage>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzIyMTk_07c07ad9-c742-4574-840f-9fd129c43813"
      unitRef="number">1.30</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzIyNzQ_3adff8f3-e802-4809-99e0-24d749a2a18c"
      unitRef="day">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzIzNTA_ce33d75c-5bd2-4363-a944-37f50d1b54d6"
      unitRef="day">3</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <gwre:DebtInstrumentConvertibleConversionNoticePeriod
      contextRef="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzI0NjA_678488eb-de9d-437d-8a44-fd7f50bcc24c">P30D</gwre:DebtInstrumentConvertibleConversionNoticePeriod>
    <us-gaap:DebtInstrumentRedemptionPricePercentage
      contextRef="ibf95ce9be0ac4f3e86e27f8598eee89d_D20180301-20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzI5MDc_75671d4b-9ef8-400e-9c55-821b05be5f5b"
      unitRef="number">1</us-gaap:DebtInstrumentRedemptionPricePercentage>
    <us-gaap:ConvertibleDebtTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzU1MTY_2c002591-5f8b-47a4-a8e8-fd959d8b2177">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The net carrying value of the liability component, unamortized debt discount, and unamortized debt issuance costs of the Convertible Senior Notes was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.027%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.031%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.553%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.361%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.555%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Principal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;400,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;border-top:2pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;400,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less unamortized:&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,198&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,531&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net carrying amount&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;358,216&#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;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343,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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effective interest rate of the Convertible Senior Notes is 5.53%. The following table sets forth the interest expense recognized related to the Convertible Senior Notes (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of debt issuance 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:10pt;font-weight:400;line-height:100%"&gt;1,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,181&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,391&#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;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ConvertibleDebtTableTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzEtMS0xLTEtOTU2NDI_549476e9-cdcb-4145-a720-f0a491e6c896"
      unitRef="usd">400000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzEtMy0xLTEtOTU2NDI_2afdbf27-88f3-40ec-a370-58a7951b3998"
      unitRef="usd">400000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzMtMS0xLTEtOTU2NDI_ad9c0532-fc65-4bdc-98a4-0c48bafbd906"
      unitRef="usd">37253000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzMtMy0xLTEtOTU2NDI_8a0c0563-6644-4edd-9579-05d0ea18c4d7"
      unitRef="usd">50198000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzQtMS0xLTEtOTU2NDI_1d0f8555-c05c-4ef2-a7fb-206881970710"
      unitRef="usd">4531000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzQtMy0xLTEtOTU2NDI_b978d711-0f5c-405d-a739-0190e3b66569"
      unitRef="usd">5977000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzUtMS0xLTEtOTU2NDI_82290836-7a64-4cbd-9d8f-d227145491be"
      unitRef="usd">358216000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTowN2NkMTAzZmJkYmE0ZTM0YjhiZWMxNGIxODRjYmE5YS90YWJsZXJhbmdlOjA3Y2QxMDNmYmRiYTRlMzRiOGJlYzE0YjE4NGNiYTlhXzUtMy0xLTEtOTU2NDI_0bffd771-b369-48e6-a325-0bf5cfb68405"
      unitRef="usd">343825000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzM5MDI_a2f6b8fc-ff28-47c1-92d4-9eb029629dda"
      unitRef="number">0.0553</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:InterestExpense
      contextRef="i6923bc8c1f2d491fa8595d3ee0036ee8_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzItMS0xLTEtOTU2NDI_c9bb576e-504f-4b09-86fc-092e2486fb92"
      unitRef="usd">5000000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i052d56b46d5f4896bdde43ba3098c268_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzItMy0xLTEtOTU2NDI_4db99b1c-6d4b-4940-b35b-fa33078a95b5"
      unitRef="usd">5000000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="iaa381b506cc44f71abbfaf0fa49f9ec2_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzItNS0xLTEtOTU2NDI_833fae95-9ff4-47be-8865-21a491c3eb66"
      unitRef="usd">5000000</us-gaap:InterestExpense>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="i6923bc8c1f2d491fa8595d3ee0036ee8_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzMtMS0xLTEtOTU2NDI_b1e86c48-7107-4324-8934-af9f92114ec9"
      unitRef="usd">12945000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="i052d56b46d5f4896bdde43ba3098c268_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzMtMy0xLTEtOTU2NDI_7c34fe4a-1524-4560-ad20-652afe5277f4"
      unitRef="usd">12310000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="iaa381b506cc44f71abbfaf0fa49f9ec2_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzMtNS0xLTEtOTU2NDI_861f65bd-45df-4099-91e5-c1c561ea794b"
      unitRef="usd">11705000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i6923bc8c1f2d491fa8595d3ee0036ee8_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzQtMS0xLTEtOTU2NDI_959884e3-a7a4-4d3a-b995-8d1370a706ae"
      unitRef="usd">1446000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i052d56b46d5f4896bdde43ba3098c268_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzQtMy0xLTEtOTU2NDI_ec4e6c2b-92bb-45e5-b43c-12a17ade8808"
      unitRef="usd">1307000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="iaa381b506cc44f71abbfaf0fa49f9ec2_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzQtNS0xLTEtOTU2NDI_1107c419-4fdb-4f3d-b20d-3f35ca147d84"
      unitRef="usd">1181000</us-gaap:AmortizationOfFinancingCosts>
    <gwre:AmortizationofDebtIssuanceCostsandDiscountsAndDebtInterestExpense
      contextRef="i6923bc8c1f2d491fa8595d3ee0036ee8_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzUtMS0xLTEtOTU2NDI_7a924569-e03b-470a-bf31-f3fbbeb01231"
      unitRef="usd">19391000</gwre:AmortizationofDebtIssuanceCostsandDiscountsAndDebtInterestExpense>
    <gwre:AmortizationofDebtIssuanceCostsandDiscountsAndDebtInterestExpense
      contextRef="i052d56b46d5f4896bdde43ba3098c268_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzUtMy0xLTEtOTU2NDI_61c4b93c-bad6-428b-a243-f43a56f051e0"
      unitRef="usd">18617000</gwre:AmortizationofDebtIssuanceCostsandDiscountsAndDebtInterestExpense>
    <gwre:AmortizationofDebtIssuanceCostsandDiscountsAndDebtInterestExpense
      contextRef="iaa381b506cc44f71abbfaf0fa49f9ec2_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90YWJsZTo0NDFiZDMxODI2ZTE0Y2I3OGJhNzUyY2FjMmI2YjI2NS90YWJsZXJhbmdlOjQ0MWJkMzE4MjZlMTRjYjc4YmE3NTJjYWMyYjZiMjY1XzUtNS0xLTEtOTU2NDI_1c331a0b-7841-42f4-88dc-c564e9ff92f4"
      unitRef="usd">17886000</gwre:AmortizationofDebtIssuanceCostsandDiscountsAndDebtInterestExpense>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i3c884d82e5bd4e828b902e94707f0138_I20180331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzQwNzM_0f25fbc1-65c7-4dd4-94be-29d69d9e935e"
      unitRef="usd">37200000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativePriceRiskOptionStrikePrice
      contextRef="i3c884d82e5bd4e828b902e94707f0138_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzQyNDY_25039cff-a1bb-4de0-9e84-aa3b0cc784fa"
      unitRef="usdPerUnit">113.75</us-gaap:DerivativePriceRiskOptionStrikePrice>
    <us-gaap:DerivativeCapPrice
      contextRef="i3c884d82e5bd4e828b902e94707f0138_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzQ0MTk_58f85104-b7c7-48ae-b113-2917b887fed8"
      unitRef="usdPerUnit">153.13</us-gaap:DerivativeCapPrice>
    <gwre:DerivativeNumberOfSharesCovered
      contextRef="i3c884d82e5bd4e828b902e94707f0138_I20180331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTUvZnJhZzplZTdkOGFiMzcyMmY0YzQ2OTA4YmFiZGQ5MmM0MDRkOC90ZXh0cmVnaW9uOmVlN2Q4YWIzNzIyZjRjNDY5MDhiYWJkZDkyYzQwNGQ4XzQ1Mjc_e3adfcdd-d0b9-4684-8eb2-bfb5d66daf44"
      unitRef="shares">3500000</gwre:DerivativeNumberOfSharesCovered>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90ZXh0cmVnaW9uOjc2ZDY0MDMwNWQzYzRiOWM5NTBlYjk4ZGZlMjBjMjMyXzExMzk_d055c0ac-4607-4905-bada-86a1478a3407">Leases&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s lease obligations consist of operating leases for office facilities and equipment, with lease periods expiring through fiscal year 2032. Some leases include one or more options to renew. Lease renewals are not assumed in the determination of the lease term until the exercise of the renewal option is deemed to be reasonably certain.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of operating lease costs were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:10pt;font-weight:400;line-height:87%"&gt;Operating lease costs &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:87%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,992&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,614&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,275&#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:10pt;font-weight:400;line-height:83%"&gt;Variable lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,496&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Sublease 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:10pt;font-weight:400;line-height:100%"&gt;(1,451)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,430)&lt;/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:10pt;font-weight:400;line-height:83%"&gt;&#160;&#160;&#160;Net operating lease costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,044&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,666&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt; Lease expense for leases with an initial term of 12 months or less is excluded from the table above and was $0.9 million, $1.0 million, $0.9 million for the fiscal years ended July&#160;31, 2022, 2021, and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future operating lease payments as of July&#160;31, 2022 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fiscal year ending July 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Total future lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;136,835&#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:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Less imputed interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;(19,474)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Total lease liability balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;117,361&#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:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental information related to leases was as follows (in thousands, except for lease term and discount rate):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&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:10pt;font-weight:700;line-height:100%"&gt;As of 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:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Operating lease assets&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;90,287&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;97,447&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;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:10pt;font-weight:400;line-height:83%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzQtMC0xLTEtOTU2NDI_c8b60104-0b57-4a9d-8fc9-7039178214d6"&gt;Current portion of lease liabilities&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;12,238&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;11,624&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:10pt;font-weight:400;line-height:83%"&gt;Non-current portion of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;105,123&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 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;115,374&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;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Total lease liabilities&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;117,361&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;126,998&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;7.65&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;8.74&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:10pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;4.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;4.20&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash and non-cash information related to operating leases was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal years ended July 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Cash payments for 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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,120&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;9,584&#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:top"/&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:10pt;font-weight:400;line-height:83%"&gt;Operating lease assets obtained in exchange for operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;23,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90ZXh0cmVnaW9uOjc2ZDY0MDMwNWQzYzRiOWM5NTBlYjk4ZGZlMjBjMjMyXzExNDA_c67012db-9038-45d1-bcd5-107b8f520eaf">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of operating lease costs were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:10pt;font-weight:400;line-height:87%"&gt;Operating lease costs &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:87%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,992&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,614&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,275&#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:10pt;font-weight:400;line-height:83%"&gt;Variable lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,496&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Sublease 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:10pt;font-weight:400;line-height:100%"&gt;(1,451)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,430)&lt;/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:10pt;font-weight:400;line-height:83%"&gt;&#160;&#160;&#160;Net operating lease costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,044&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,666&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt; Lease expense for leases with an initial term of 12 months or less is excluded from the table above and was $0.9 million, $1.0 million, $0.9 million for the fiscal years ended July&#160;31, 2022, 2021, and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental information related to leases was as follows (in thousands, except for lease term and discount rate):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&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:10pt;font-weight:700;line-height:100%"&gt;As of 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:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Operating lease assets&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;90,287&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;97,447&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;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:10pt;font-weight:400;line-height:83%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzQtMC0xLTEtOTU2NDI_c8b60104-0b57-4a9d-8fc9-7039178214d6"&gt;Current portion of lease liabilities&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;12,238&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;11,624&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:10pt;font-weight:400;line-height:83%"&gt;Non-current portion of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;105,123&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 7pt 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;115,374&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;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Total lease liabilities&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;117,361&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;126,998&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&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;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;7.65&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;8.74&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:10pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;4.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;4.20&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash and non-cash information related to operating leases was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal years ended July 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Cash payments for 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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,120&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;9,584&#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:top"/&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:10pt;font-weight:400;line-height:83%"&gt;Operating lease assets obtained in exchange for operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;23,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzItMS0xLTEtOTU2NDI_f7ceb33d-dd5d-4323-8300-d99c29183b65"
      unitRef="usd">15992000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzItMy0xLTEtOTU2NDI_d25c2339-ddd6-4f60-a734-230f0e91652b"
      unitRef="usd">17614000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzItNS0xLTEtMTAwMTgz_72c347be-6f94-40c6-8a53-25ef7299994c"
      unitRef="usd">15275000</us-gaap:OperatingLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzMtMS0xLTEtOTU2NDI_25def670-1acf-4384-838b-98e64d0b27f1"
      unitRef="usd">5496000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzMtMy0xLTEtOTU2NDI_4818bfc4-d8b8-45fb-9ef4-0baf70afea54"
      unitRef="usd">5017000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzMtNS0xLTEtMTAwMTgz_8561d245-0b2e-4d52-a990-a1988d8450f5"
      unitRef="usd">5821000</us-gaap:VariableLeaseCost>
    <us-gaap:SubleaseIncome
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzQtMS0xLTEtOTU2NDI_67693d74-88c2-486f-9f5e-88b9ce764404"
      unitRef="usd">1451000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzQtMy0xLTEtOTU2NDI_ac89ba4b-1792-46f1-bb7c-b8cfda5b909f"
      unitRef="usd">1587000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzQtNS0xLTEtMTAwMTgz_46468bec-e798-480c-af6c-e94bc52d296d"
      unitRef="usd">1430000</us-gaap:SubleaseIncome>
    <us-gaap:LeaseCost
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzUtMS0xLTEtOTU2NDI_684fe5e8-d217-4f27-8f7d-426d2e9554f2"
      unitRef="usd">20037000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzUtMy0xLTEtOTU2NDI_ee867d9c-9e95-4810-b536-50c5e2462fe9"
      unitRef="usd">21044000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTplMDNiZjQ4MmJlYmQ0YmJhODAxODNkZjI3MjdkODM1NC90YWJsZXJhbmdlOmUwM2JmNDgyYmViZDRiYmE4MDE4M2RmMjcyN2Q4MzU0XzUtNS0xLTEtMTE2NDc3_c44a0e55-52a9-4f7e-bb76-7278d340cde7"
      unitRef="usd">19666000</us-gaap:LeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90ZXh0cmVnaW9uOjc2ZDY0MDMwNWQzYzRiOWM5NTBlYjk4ZGZlMjBjMjMyXzU0OA_d2235a38-3be5-4563-9d1f-13d6ef31a2ed"
      unitRef="usd">900000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90ZXh0cmVnaW9uOjc2ZDY0MDMwNWQzYzRiOWM5NTBlYjk4ZGZlMjBjMjMyXzU1NQ_e5051aa3-2874-49d3-8890-0231ef3ec55a"
      unitRef="usd">1000000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90ZXh0cmVnaW9uOjc2ZDY0MDMwNWQzYzRiOWM5NTBlYjk4ZGZlMjBjMjMyXzIxOTkwMjMyNTY5NTM_0233d783-d655-4d3c-ad87-e96444f6bbf1"
      unitRef="usd">900000</us-gaap:ShortTermLeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90ZXh0cmVnaW9uOjc2ZDY0MDMwNWQzYzRiOWM5NTBlYjk4ZGZlMjBjMjMyXzExNDE_a6634650-7911-4367-b9b2-0573f630ef83">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future operating lease payments as of July&#160;31, 2022 were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fiscal year ending July 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Total future lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;136,835&#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:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Less imputed interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;(19,474)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;Total lease liability balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:83%"&gt;117,361&#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:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzEtMS0xLTEtOTU2NDI_420027ff-ffb9-48ce-89bb-cc85559e1660"
      unitRef="usd">16669000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzEtMS0xLTEtOTU2NDI_bc670e94-95f7-476b-9044-256aa379da06"
      unitRef="usd">16669000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzItMS0xLTEtOTU2NDI_8669bd53-bc0a-427c-a903-2209ed8b7955"
      unitRef="usd">17712000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzItMS0xLTEtOTU2NDI_d603e904-8684-4272-b5b5-3d610bbfa8ca"
      unitRef="usd">17712000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzMtMS0xLTEtOTU2NDI_6f0040ce-3915-42a9-8f1b-796d1719b93e"
      unitRef="usd">17869000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzMtMS0xLTEtOTU2NDI_e519f26e-e470-4683-87b3-974c8c67ac7a"
      unitRef="usd">17869000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzQtMS0xLTEtOTU2NDI_df68c1fc-75f6-4646-82f9-56d75de1ca46"
      unitRef="usd">17792000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzQtMS0xLTEtOTU2NDI_e67d3565-db2f-4d14-aac7-157b2acbdefa"
      unitRef="usd">17792000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzUtMS0xLTEtOTg5MjE_df7c881d-251b-4f80-8a86-14d5b1ae420b"
      unitRef="usd">17370000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzUtMS0xLTEtOTU2NDI_fd437145-7fab-4855-ae8b-0b60f3535769"
      unitRef="usd">49423000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzctMS0xLTEtOTU2NDI_a965ee3e-61f8-4fb4-b5e0-817f19dd2c38"
      unitRef="usd">136835000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzgtMS0xLTEtOTU2NDI_6159344b-22b2-43e5-a812-9e3157c03e70"
      unitRef="usd">19474000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTphNzM1NGEyZTIxMTk0ZWU0YmQ4Y2IxOTg2ZWVlNTMwNy90YWJsZXJhbmdlOmE3MzU0YTJlMjExOTRlZTRiZDhjYjE5ODZlZWU1MzA3XzktMS0xLTEtOTU2NDI_54a0efd7-63ff-41df-a43d-c914e2699af1"
      unitRef="usd">117361000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzItMS0xLTEtOTU2NDI_2b73368e-44c2-44bc-a9a7-076c8be9941a"
      unitRef="usd">90287000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzItMy0xLTEtOTU2NDI_965014b3-ebb9-446e-a65b-d7cd2f43030f"
      unitRef="usd">97447000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzQtMS0xLTEtOTU2NDI_795c3a57-89e9-40b4-80fd-7feb6f005866"
      unitRef="usd">12238000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzQtMy0xLTEtOTU2NDI_9efa01bb-70c2-4c4f-bd83-cb28e6c612ee"
      unitRef="usd">11624000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzUtMS0xLTEtOTU2NDI_2911fd0f-98c3-4c54-9c56-0430844f610b"
      unitRef="usd">105123000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzUtMy0xLTEtOTU2NDI_446b2fc3-80c4-4d05-acc4-138904e3cfa8"
      unitRef="usd">115374000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzYtMS0xLTEtOTU2NDI_92818785-3e9d-435a-93f9-ee4f4cb7c95f"
      unitRef="usd">117361000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzYtMy0xLTEtOTU2NDI_304cba7e-0ddd-46a8-a94d-6a3aa2afaea8"
      unitRef="usd">126998000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzgtMS0xLTEtOTU2NDI_90f5ec5e-ca14-4ea8-8240-998d0afb8f5b">P7Y7M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzgtMy0xLTEtOTU2NDI_68073d0c-50e2-45e2-9b37-8499ad31eff6">P8Y8M26D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzktMS0xLTEtOTU2NDI_aa62d8fd-ba08-48ee-a073-ed0ede6b9baa"
      unitRef="number">0.0400</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozNWQyZDM2ODM2MGE0M2ZhODNkNjc2NGFhYTE4NTcwNC90YWJsZXJhbmdlOjM1ZDJkMzY4MzYwYTQzZmE4M2Q2NzY0YWFhMTg1NzA0XzktMy0xLTEtOTU2NDI_d06b2f20-7933-4c71-9a9f-d42e3d457321"
      unitRef="number">0.0420</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeasePayments
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozMDRlNGRhMzk0NGE0YWI0YjQ0ODczMmU2ZDFmYjJjMS90YWJsZXJhbmdlOjMwNGU0ZGEzOTQ0YTRhYjRiNDQ4NzMyZTZkMWZiMmMxXzItMS0xLTEtOTU2NDI_274a2bb0-1587-4785-87ca-e0f992788309"
      unitRef="usd">19120000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozMDRlNGRhMzk0NGE0YWI0YjQ0ODczMmU2ZDFmYjJjMS90YWJsZXJhbmdlOjMwNGU0ZGEzOTQ0YTRhYjRiNDQ4NzMyZTZkMWZiMmMxXzItMy0xLTEtOTU2NDI_beca87ca-089c-41c5-ad93-883b3eda10e2"
      unitRef="usd">17837000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozMDRlNGRhMzk0NGE0YWI0YjQ0ODczMmU2ZDFmYjJjMS90YWJsZXJhbmdlOjMwNGU0ZGEzOTQ0YTRhYjRiNDQ4NzMyZTZkMWZiMmMxXzItNS0xLTEtMTAwMjcz_52186d59-8585-4cc5-a3ef-9956677ad2e0"
      unitRef="usd">9584000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozMDRlNGRhMzk0NGE0YWI0YjQ0ODczMmU2ZDFmYjJjMS90YWJsZXJhbmdlOjMwNGU0ZGEzOTQ0YTRhYjRiNDQ4NzMyZTZkMWZiMmMxXzMtMS0xLTEtOTU2NDI_cd3f54c0-db5e-4a79-91b4-64bb6fe43715"
      unitRef="usd">5867000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozMDRlNGRhMzk0NGE0YWI0YjQ0ODczMmU2ZDFmYjJjMS90YWJsZXJhbmdlOjMwNGU0ZGEzOTQ0YTRhYjRiNDQ4NzMyZTZkMWZiMmMxXzMtMy0xLTEtOTU2NDI_b76d7505-81ef-4a71-88d9-34d3e316f294"
      unitRef="usd">6503000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMTgvZnJhZzo3NmQ2NDAzMDVkM2M0YjljOTUwZWI5OGRmZTIwYzIzMi90YWJsZTozMDRlNGRhMzk0NGE0YWI0YjQ0ODczMmU2ZDFmYjJjMS90YWJsZXJhbmdlOjMwNGU0ZGEzOTQ0YTRhYjRiNDQ4NzMyZTZkMWZiMmMxXzMtNS0xLTEtMTAwMjcz_9d0e2d0a-4223-413e-9076-1adc0f4ab962"
      unitRef="usd">23032000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90ZXh0cmVnaW9uOjNiMTk5YmUyNWQzNjRiZGNiMGVjMmZlNGM4NWI5MTMyXzM2NDI_9640421f-c892-41f8-8981-f105eb2ae3d6">Commitments and Contingencies&lt;div style="margin-top:14pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s contractual obligations and commitments as of July&#160;31, 2022 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.795%"/&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Lease Obligations&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Royalty Obligations&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Purchase Commitments&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Long Term Debt&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(4)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal Year Ending July 31,&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;border-top:1pt solid #000;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;border-top:1pt solid #000;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;border-top:1pt solid #000;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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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:10pt;font-weight:400;line-height:100%"&gt;54,251&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;292&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,926&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;405,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;432,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;477&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,269&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,423&#160;&lt;/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;text-indent:18pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,835&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,015&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;98,072&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;415,000&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;654,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Lease obligations primarily represent payments required under the Company&#x2019;s non-cancellable lease agreements for the Company&#x2019;s corporate headquarters and worldwide offices through 2032.&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;/div&gt;&lt;div style="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Royalty obligations primarily represent the Company&#x2019;s obligations under non-cancellable agreements related to software used in certain revenue-generating agreements.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(3) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Purchase commitments represent commitments to purchase goods and services, entered into in the ordinary course of business, for which a penalty could be imposed if the agreement was cancelled for any reason other than an event of default as described by the agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(4)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:1.12pt;vertical-align:baseline"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Long-term debt consists of principal and interest payments on the Company&#x2019;s Convertible Senior Notes. The $400&#160;million in principal will be due in March 2025. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-indent:24.75pt"&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;Legal Proceedings&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;From time to time, the Company is involved in various legal proceedings and receives claims, arising from the normal course of business activities. The Company has not recorded any accrual for claims as of July&#160;31, 2022 and 2021, respectively. The Company has not accrued for estimated losses in the accompanying consolidated financial statements as the Company has determined that no provision for liability nor disclosure is required related to any claim against the Company because: (a) there is not a reasonable possibility that a loss exceeding amounts already recognized (if any) may be incurred with respect to such claim; (b) a reasonably possible loss or range of loss cannot be estimated; or (c) such estimate is immaterial. The Company expenses legal fees in the period in which they are incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:justify;text-indent:24.75pt"&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;Indemnification&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company sells software licenses and services to its customers under Software License Agreements (&#x201c;SLA&#x201d;) and Software Subscription Agreements (&#x201c;SSA&#x201d;). SLAs and SSAs contain the terms of the contractual arrangement with the customer and generally include certain provisions for defending the customer against any claims that the Company&#x2019;s software infringes upon a patent, copyright, trademark, or other proprietary right of a third party. SLAs and SSAs also generally indemnify the customer against judgments, settlements, fines, penalties, costs, and expenses resulting from a claim (&#x201c;Losses&#x201d;) against the customer in the event the Company&#x2019;s software is found to infringe upon such third-party rights. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has not had to reimburse any of its customers for Losses related to indemnification provisions and no material claims against the Company were outstanding as of July&#160;31, 2022 and 2021. For several reasons, including the lack of prior indemnification claims and the lack of a monetary liability limit for certain infringement cases under various SLAs and SSAs, the Company cannot estimate the amount of potential future payments, if any, related to indemnification provisions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has also agreed to indemnify its directors and executive officers for costs associated with any fees, expenses, judgments, fines, and settlement amounts incurred by any of these persons in any action or proceeding to which any of these persons is, or is threatened to be, made a party by reason of the person&#x2019;s service as a director or officer, including any action by the Company, arising out of that person&#x2019;s services as the Company&#x2019;s director or officer or that person&#x2019;s services provided to any other company or enterprise at the Company&#x2019;s request. The Company maintains director and officer insurance coverage that may enable the Company to recover a portion of any future amounts paid.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90ZXh0cmVnaW9uOjNiMTk5YmUyNWQzNjRiZGNiMGVjMmZlNGM4NWI5MTMyXzM2NDM_b4e5ef7a-e41e-4bc9-aa89-7ea647559187">&lt;div style="margin-top:14pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s contractual obligations and commitments as of July&#160;31, 2022 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.795%"/&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Lease Obligations&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Royalty Obligations&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Purchase Commitments&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Long Term Debt&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(4)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fiscal Year Ending July 31,&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;border-top:1pt solid #000;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;border-top:1pt solid #000;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;border-top:1pt solid #000;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;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,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:10pt;font-weight:400;line-height:100%"&gt;54,251&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;292&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,926&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;405,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;432,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;477&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,269&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,423&#160;&lt;/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;text-indent:18pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,835&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,015&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;98,072&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;415,000&#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;border-bottom:3pt double #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;654,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Lease obligations primarily represent payments required under the Company&#x2019;s non-cancellable lease agreements for the Company&#x2019;s corporate headquarters and worldwide offices through 2032.&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;/div&gt;&lt;div style="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Royalty obligations primarily represent the Company&#x2019;s obligations under non-cancellable agreements related to software used in certain revenue-generating agreements.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(3) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Purchase commitments represent commitments to purchase goods and services, entered into in the ordinary course of business, for which a penalty could be imposed if the agreement was cancelled for any reason other than an event of default as described by the agreement.&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(4)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:1.12pt;vertical-align:baseline"&gt; &lt;/span&gt;Long-term debt consists of principal and interest payments on the Company&#x2019;s Convertible Senior Notes. The $400&#160;million in principal will be due in March 2025.</srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzItMi0xLTEtOTU2NDI_420027ff-ffb9-48ce-89bb-cc85559e1660"
      unitRef="usd">16669000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzItMi0xLTEtOTU2NDI_bc670e94-95f7-476b-9044-256aa379da06"
      unitRef="usd">16669000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDueYearOne
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzItNC0xLTEtOTU2NDI_0405433a-cb3b-4c5f-8fa1-614980445ea2"
      unitRef="usd">4138000</gwre:RoyaltyObligationsFutureMinimumPaymentsDueYearOne>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDueCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzItNi0xLTEtOTU2NDI_9e26a57a-e4c8-43ba-9557-e81527ed42c0"
      unitRef="usd">57715000</gwre:PurchaseCommitmentsFutureMinimumPaymentsDueCurrent>
    <gwre:LongTermDebtFutureMinimumPaymentsDueCurrent
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzItOC0xLTEtOTU2NDI_41cdcd85-1901-4332-a4d2-11d1e6fa09ac"
      unitRef="usd">5000000</gwre:LongTermDebtFutureMinimumPaymentsDueCurrent>
    <us-gaap:ContractualObligationDueInNextTwelveMonths
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzItMTAtMS0xLTk1NjQy_ca0e6fb4-d627-41fb-8f54-ba12426366dd"
      unitRef="usd">83522000</us-gaap:ContractualObligationDueInNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzMtMi0xLTEtOTU2NDI_8669bd53-bc0a-427c-a903-2209ed8b7955"
      unitRef="usd">17712000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzMtMi0xLTEtOTU2NDI_d603e904-8684-4272-b5b5-3d610bbfa8ca"
      unitRef="usd">17712000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDueInTwoYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzMtNC0xLTEtOTU2NDI_dfe71931-b388-4a0e-ad75-54848e7ea175"
      unitRef="usd">585000</gwre:RoyaltyObligationsFutureMinimumPaymentsDueInTwoYears>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinTwoYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzMtNi0xLTEtOTU2NDI_e553d6a5-e37f-4fd6-8704-7a4b437b073d"
      unitRef="usd">30954000</gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinTwoYears>
    <gwre:LongTermDebtFutureMinimumPaymentsDueInTwoYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzMtOC0xLTEtOTU2NDI_65380639-b4c4-4348-8d81-222fbe1b8016"
      unitRef="usd">5000000</gwre:LongTermDebtFutureMinimumPaymentsDueInTwoYears>
    <us-gaap:ContractualObligationDueInSecondYear
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzMtMTAtMS0xLTk1NjQy_d7a013a6-6b50-4275-97e9-74ae237bdcdb"
      unitRef="usd">54251000</us-gaap:ContractualObligationDueInSecondYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzQtMi0xLTEtOTU2NDI_6f0040ce-3915-42a9-8f1b-796d1719b93e"
      unitRef="usd">17869000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzQtMi0xLTEtOTU2NDI_e519f26e-e470-4683-87b3-974c8c67ac7a"
      unitRef="usd">17869000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDueInThreeYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzQtNC0xLTEtOTU2NDI_cfe5fde4-30a9-49b1-a16a-64fb735a557d"
      unitRef="usd">292000</gwre:RoyaltyObligationsFutureMinimumPaymentsDueInThreeYears>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinThreeYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzQtNi0xLTEtOTU2NDI_c1594f28-ac05-4a01-8072-f74a0bddb029"
      unitRef="usd">8926000</gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinThreeYears>
    <gwre:LongTermDebtFutureMinimumPaymentsDueInThreeYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzQtOC0xLTEtOTU2NDI_359c2fd3-4f57-4c0e-a043-b8aebbe277df"
      unitRef="usd">405000000</gwre:LongTermDebtFutureMinimumPaymentsDueInThreeYears>
    <us-gaap:ContractualObligationDueInThirdYear
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzQtMTAtMS0xLTk1NjQy_99b437ce-18c0-4e7d-a2b7-4f013a4e3ea3"
      unitRef="usd">432087000</us-gaap:ContractualObligationDueInThirdYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzUtMi0xLTEtOTU2NDI_df68c1fc-75f6-4646-82f9-56d75de1ca46"
      unitRef="usd">17792000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzUtMi0xLTEtOTU2NDI_e67d3565-db2f-4d14-aac7-157b2acbdefa"
      unitRef="usd">17792000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDueInFourYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzUtNC0xLTEtOTU2NDI_90a8648a-b7e9-4388-b6a3-6563ed373717"
      unitRef="usd">0</gwre:RoyaltyObligationsFutureMinimumPaymentsDueInFourYears>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinFourYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzUtNi0xLTEtOTU2NDI_84a1f81b-7d7f-4fa6-b1b7-652fd21081a6"
      unitRef="usd">477000</gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinFourYears>
    <gwre:LongTermDebtFutureMinimumPaymentsDueInFourYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzUtOC0xLTEtOTU2NDI_9b100129-6767-4f5d-8a6b-880ea7b4a65a"
      unitRef="usd">0</gwre:LongTermDebtFutureMinimumPaymentsDueInFourYears>
    <us-gaap:ContractualObligationDueInFourthYear
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzUtMTAtMS0xLTk1NjQy_d82a14b3-8ed2-4d8f-a576-31a991ca274a"
      unitRef="usd">18269000</us-gaap:ContractualObligationDueInFourthYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzYtMi0xLTEtOTU2NDI_df7c881d-251b-4f80-8a86-14d5b1ae420b"
      unitRef="usd">17370000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDueInFiveYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzYtNC0xLTEtOTU2NDI_cad1a1f9-b5d2-486e-bc5e-e25dd630f318"
      unitRef="usd">0</gwre:RoyaltyObligationsFutureMinimumPaymentsDueInFiveYears>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinFiveYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzYtNi0xLTEtOTU2NDI_5375663f-35e6-4f82-8539-3bf7bb1f60dc"
      unitRef="usd">0</gwre:PurchaseCommitmentsFutureMinimumPaymentsDueinFiveYears>
    <gwre:LongTermDebtFutureMinimumPaymentsDueInFiveYears
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzYtOC0xLTEtOTU2NDI_45d375bc-6e0d-4fc6-892c-86dcb06d0619"
      unitRef="usd">0</gwre:LongTermDebtFutureMinimumPaymentsDueInFiveYears>
    <us-gaap:ContractualObligationDueInFifthYear
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzYtMTAtMS0xLTk1NjQy_7a4c5e28-3f37-42b0-88ed-a2ff485a4bdb"
      unitRef="usd">17370000</us-gaap:ContractualObligationDueInFifthYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzctMi0xLTEtOTU2NDI_fd437145-7fab-4855-ae8b-0b60f3535769"
      unitRef="usd">49423000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDueThereafter
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzctNC0xLTEtOTU2NDI_b09a9943-c6d4-4145-8072-0391f5837415"
      unitRef="usd">0</gwre:RoyaltyObligationsFutureMinimumPaymentsDueThereafter>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDueThereafter
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzctNi0xLTEtOTU2NDI_6c1466a9-dde5-490b-bf45-fc89a5d19c03"
      unitRef="usd">0</gwre:PurchaseCommitmentsFutureMinimumPaymentsDueThereafter>
    <gwre:LongTermDebtFutureMinimumPaymentsDueThereafter
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzctOC0xLTEtOTU2NDI_cce184ec-5007-47cd-8483-14b64ce56fab"
      unitRef="usd">0</gwre:LongTermDebtFutureMinimumPaymentsDueThereafter>
    <us-gaap:ContractualObligationDueAfterFifthYear
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzctMTAtMS0xLTk1NjQy_29cf195f-fd1a-4bb1-a792-355faa3dbe02"
      unitRef="usd">49423000</us-gaap:ContractualObligationDueAfterFifthYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzgtMi0xLTEtOTU2NDI_30b7c4e7-9ddc-4fcc-8865-e97b1db5baa7"
      unitRef="usd">136835000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <gwre:RoyaltyObligationsFutureMinimumPaymentsDue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzgtNC0xLTEtOTU2NDI_8d0d85f7-6eec-4782-b152-404febb2f62d"
      unitRef="usd">5015000</gwre:RoyaltyObligationsFutureMinimumPaymentsDue>
    <gwre:PurchaseCommitmentsFutureMinimumPaymentsDue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzgtNi0xLTEtOTU2NDI_d419ebc0-b914-4745-bca1-3de599542a18"
      unitRef="usd">98072000</gwre:PurchaseCommitmentsFutureMinimumPaymentsDue>
    <gwre:LongTermDebtFutureMinimumPaymentsDue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzgtOC0xLTEtOTU2NDI_fd414fb3-2636-441a-8b7c-2a0c62761a8b"
      unitRef="usd">415000000</gwre:LongTermDebtFutureMinimumPaymentsDue>
    <us-gaap:ContractualObligation
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90YWJsZToyOTMwNDFmZmVmYmU0NGUyYTI5Yjg0NDcwZTNhNmY2Yi90YWJsZXJhbmdlOjI5MzA0MWZmZWZiZTQ0ZTJhMjliODQ0NzBlM2E2ZjZiXzgtMTAtMS0xLTk1NjQy_ca64c2aa-d043-4fb9-a737-da4e42552dce"
      unitRef="usd">654922000</us-gaap:ContractualObligation>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="ifb2f7d8a1ce84d0f9517fc7265088c36_I20180331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjEvZnJhZzozYjE5OWJlMjVkMzY0YmRjYjBlYzJmZTRjODViOTEzMi90ZXh0cmVnaW9uOjNiMTk5YmUyNWQzNjRiZGNiMGVjMmZlNGM4NWI5MTMyXzg4MQ_cceabc36-a05b-4861-888d-5422d981d641"
      unitRef="usd">400000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUyMzY_393dde2e-8f40-413c-8da1-4509038c9a2c">Stock-Based Compensation Expense and Shareholders&#x2019; Equity&lt;div style="margin-top:9pt;text-indent:24.75pt"&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-Based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense related to stock options and Stock Awards is included in the Company&#x2019;s consolidated statements of operations as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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:8pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;116,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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102,191&#160;&lt;/span&gt;&lt;/td&gt;&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net impact of deferred stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(374)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101,817&#160;&lt;/span&gt;&lt;/td&gt;&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;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="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation expense is included in the following categories:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of subscription and support revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,231&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of license revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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:10pt;font-weight:400;line-height:100%"&gt;770&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;769&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of services revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,816&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,324&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,260&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,660&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,073&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax benefit from stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation, net of tax effect&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110,860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,457&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total unrecognized stock-based compensation expense related to the Company&#x2019;s stock options and Stock Awards as of July&#160;31, 2022 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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Unrecognized Expense&lt;br/&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Expected Recognition Period &lt;br/&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock Options&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,557&#160;&lt;/span&gt;&lt;/td&gt;&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 #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:10pt;font-weight:400;line-height:100%"&gt;1.9&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265,475&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.5&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total unrecognized stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267,032&#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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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 Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of the Company&#x2019;s Stock Awards activity under the Company&#x2019;s equity incentive plans is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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:8pt;font-weight:700;line-height:100%"&gt;Stock Awards Outstanding&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;Number of Stock Awards&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 Grant Date Fair Value&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;&#160;Aggregate Intrinsic Value&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,384,673&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.20&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,587,664&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Released &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,217,337)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(309,302)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;87.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,445,698&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;287,761&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,429,325&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Released&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,167,291)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;131,188&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(312,764)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,394,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;275,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,942,391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Released&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,202,125)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107.29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118,669&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(349,881)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,785,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110.47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,478&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected to vest as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;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:10pt;font-weight:400;line-height:100%"&gt;2,785,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110.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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,478&#160;&lt;/span&gt;&lt;/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="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Aggregate intrinsic value at each period end represents the total market value of Stock Awards at the Company&#x2019;s closing stock price of $77.72, $115.20, and $117.66 on July&#160;31, 2022, 2021, and 2020, respectively. Aggregate intrinsic value for released Stock Awards represents the total market value of released Stock Awards at date of release.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain executives and employees of the Company received PSUs and TSR PSUs in addition to RSUs. PSUs awarded in fiscal years 2022 and 2021 will vest over three years with 50% vesting annually over the three year period and the remaining 50% vesting at the end of the third year. The TSR PSUs are subject to total shareholder return rankings of the Company&#x2019;s common stock relative to the software companies in the S&amp;amp;P Index for a specified period or periods, and vest at the end of three years. The Company recognized stock-based compensation related to these performance-based and market-based stock awards of $14.7 million, $13.9 million, and $13.1&#160;million in fiscal years 2022, 2021, and 2020, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of stock option activity under the Company&#x2019;s equity incentive plans is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;&#160;Number of Stock 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:8pt;font-weight:700;line-height:100%"&gt;&#160;Weighted Average Exercise 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:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Contractual Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;&#160;Aggregate Intrinsic Value&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,727&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34.10&#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="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:10pt;font-weight:400;line-height:100%"&gt;5.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,733&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(132,573)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,822)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,058&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(53,932)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,122)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17.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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71.67&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,472)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11.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 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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.7&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested and expected to vest as of July 31, 2022&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:10pt;font-weight:400;line-height:100%"&gt;75,706&#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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.7&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;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:10pt;font-weight:400;line-height:100%"&gt;14,806&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;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 style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;827&#160;&lt;/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="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Aggregate intrinsic value at each fiscal year end represents the difference between the Company&#x2019;s closing stock price of $77.72, $115.20, and $117.66 on July&#160;31, 2022, 2021, and 2020, respectively, and the exercise price of outstanding stock options. Aggregate intrinsic value for exercised options represents the difference between the Company&#x2019;s stock price at date of exercise and the exercise price.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Valuation of Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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 Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the stock options is estimated at the grant date using the Black-Scholes option-pricing model, which included the following assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:10pt;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:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Fiscal year 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 #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected 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:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.04% - 3.55%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31.75% - 31.94%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no stock options granted during fiscal years 2021 and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;TSR PSUs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the TSR PSUs is estimated at the grant date using a Monte Carlo simulation model which included the following assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:10pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Fiscal year 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.90&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.46%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility of the Company&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28.4%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Average expected volatility of the peer companies in the S&amp;amp;P Index&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no TSR PSUs granted during fiscal years 2022 and 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The number of TSR PSUs that may ultimately vest will vary based on the performance of the Company&#x2019;s common stock relative to the shareholder return of the software companies in the S&amp;amp;P Index for a specified period or periods.&#160;The Monte Carlo methodology incorporates into the valuation all possible outcomes, including that the Company&#x2019;s relative performance may result in no shares vesting. As a result, stock-based compensation expense is recognized regardless of the Company&#x2019;s ultimate achievement of the plan&#x2019;s metrics. The expense will be reversed only in the event that a grantee is terminated prior to satisfying the requisite service period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Common Stock Reserved for Issuance&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022 and 2021, the Company was authorized to issue 500,000,000 shares of common stock with a par value of $0.0001 per share and, of these, 84,084,209 and 83,194,157 shares of common stock were issued and outstanding, respectively. As of July&#160;31, 2022 and 2021, the Company had reserved shares of common stock for future issuance as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercise of stock options to purchase common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,706&#160;&lt;/span&gt;&lt;/td&gt;&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 #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vesting of stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,785,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,394,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares available under stock plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,360,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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,014,069&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total common stock reserved for issuance&lt;/span&gt;&lt;/td&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:10pt;font-weight:400;line-height:100%"&gt;6,221,718&#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="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:10pt;font-weight:400;line-height:100%"&gt;7,434,315&#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-indent:24.75pt"&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;Equity Incentive Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On December 15, 2020, the Company&#x2019;s stockholders adopted the 2020 Stock Plan (&#x201c;2020 Plan&#x201d;) for the purpose of granting equity-based incentive awards. The Company initially reserved 5,000,000 shares of its common stock for the issuance of awards under the 2020 Plan. The shares available for issuance are subject to adjustment in the event of a stock split, stock dividend or other defined changes in the Company&#x2019;s capitalization. The 2020 Plan replaced the Company&#x2019;s 2011 Stock Plan; however, awards outstanding under the 2011 Stock Plan will continue to be governed by their existing terms.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The shares the Company issues under the 2020 Plan will be from the Company's pool of authorized but unissued shares. The shares of common stock underlying any awards under the 2011 Stock Plan that are forfeited, canceled, held back upon exercise or settlement of an award to cover the exercise price or tax withholding, reacquired by the Company prior to vesting, satisfied without any issuance of stock or are otherwise terminated (other than by exercise) are added back to the shares of stock available for issuance under the 2020 Plan. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Share Repurchase Program&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In October 2020, the Company's board of directors authorized and approved a share repurchase program of up to $200.0&#160;million of the Company's outstanding common stock. Share repurchases under the program may be made from time to time, in the open market, in privately negotiated transactions and otherwise, at the discretion of management of the Company and in accordance with applicable federal securities laws, including Rule 10b-18 of the Exchange Act, and other applicable legal requirements. Such repurchases may also be made in compliance with Rule 10b5-1 trading plans entered into by the Company.&lt;/span&gt;&lt;/div&gt;The share repurchase program was completed in the second quarter of fiscal year 2022. During the fiscal year ended July&#160;31, 2022, the Company repurchased 322,545 shares of common stock at an average price of $116.11 per share, for an aggregate purchase price of $37.5 million. During the fiscal year ended July 31, 2021, the Company repurchased 1,488,991 shares of common stock at an average price of $109.17 per share, for an aggregate purchase price of $162.5 million.</us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUyMzg_4fbde8b8-c716-4779-ac62-3a71dbe0a072">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense related to stock options and Stock Awards is included in the Company&#x2019;s consolidated statements of operations as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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:8pt;font-weight:700;line-height:100%"&gt;Fiscal 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="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;116,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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102,191&#160;&lt;/span&gt;&lt;/td&gt;&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net impact of deferred stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(374)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101,817&#160;&lt;/span&gt;&lt;/td&gt;&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;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="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation expense is included in the following categories:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of subscription and support revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,231&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of license revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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:10pt;font-weight:400;line-height:100%"&gt;770&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;769&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of services revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,816&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,324&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,960&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,260&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,660&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,073&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax benefit from stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation, net of tax effect&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110,860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,457&#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:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzItMS0xLTEtOTU2NDI_f9e7215a-7669-46c8-b73f-76b69a3b6808"
      unitRef="usd">138156000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzItMy0xLTEtOTU2NDI_6ce3cb8a-cded-4776-bac4-d4d538d6c0d0"
      unitRef="usd">116222000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzItNS0xLTEtOTU2NDI_c84b32cd-554a-455e-a073-2af52041430c"
      unitRef="usd">102191000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzMtMS0xLTEtOTU2NDI_4567ca45-16e1-4599-87e0-f89c39ff7d13"
      unitRef="usd">1145000</us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount>
    <us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzMtMy0xLTEtOTU2NDI_f61fcbb0-72a6-42f3-8369-8543ec1c3802"
      unitRef="usd">1213000</us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount>
    <us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzMtNS0xLTEtOTU2NDI_11e26507-e322-4678-9abb-b00d5821f927"
      unitRef="usd">374000</us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzQtMS0xLTEtOTU2NDI_f3367ef8-27dc-466d-8763-b41bee9d151c"
      unitRef="usd">137011000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzQtMy0xLTEtOTU2NDI_01f1bbac-c683-4c6e-8ec7-1c5240075cdc"
      unitRef="usd">115009000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzQtNS0xLTEtOTU2NDI_6b98c5f9-beb1-4085-b391-84958584f2f0"
      unitRef="usd">101817000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensation
      contextRef="ibd0b14e96bf54976a2a649ab9957b2c0_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzctMS0xLTEtOTU2NDI_31b8f793-b6c2-4fce-b047-7c2b7dae95f7"
      unitRef="usd">14614000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="iefffe4419a004e76ad53140fc2500d0d_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzctMy0xLTEtOTU2NDI_0e371f5f-a89a-47b2-973a-a25e4928c58d"
      unitRef="usd">11231000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i18f5168c83324d25bf67a7e47bbf99e2_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzctNS0xLTEtOTU2NDI_2c757395-7fa6-45c4-9223-af2073df0462"
      unitRef="usd">7575000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i1b305aae93b54a3f9a2b696108cae0fc_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzgtMS0xLTEtOTU2NDI_ad4ccc34-b21e-4601-88a1-15019673833e"
      unitRef="usd">692000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i2203306d2b564383911ad8c3ee4cc4f4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzgtMy0xLTEtOTU2NDI_1677e7d3-e08a-46eb-a01d-6a65578a498d"
      unitRef="usd">770000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i75ef07dbc58644fba1b132883643dfee_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzgtNS0xLTEtOTU2NDI_3a7239b8-6749-477b-a2d1-c7642e6d3ac2"
      unitRef="usd">769000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i46fb735e2d754f90ba38143d5e46a219_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzktMS0xLTEtOTU2NDI_5948d4fc-a336-4e95-a6ba-ae10d9a9a60e"
      unitRef="usd">22951000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="idf94e5bc7b89484c8025704b9aa57770_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzktMy0xLTEtOTU2NDI_78127a37-0c69-442d-ad88-7d29260035d0"
      unitRef="usd">21809000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i43fdb9c29c1041319e03b7dd5fddf8ad_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzktNS0xLTEtOTU2NDI_29d6aec1-e3d4-4357-a75d-c7000cd434b2"
      unitRef="usd">20816000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="id6bbb3fa6c3948bda2530a9e52dd1b66_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEwLTEtMS0xLTk1NjQy_3398788c-e699-48ff-be85-b4083bd804ec"
      unitRef="usd">36134000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="iba50f9e0cec84e6b97aa015cf95d61bd_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEwLTMtMS0xLTk1NjQy_995e7350-2461-4a1a-8f56-6d7e7eba750b"
      unitRef="usd">29524000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i8aa2d8da8a634099820ba68a6e9f0b41_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEwLTUtMS0xLTk1NjQy_a70de5e1-bee7-481e-80e4-6acbda7a12c3"
      unitRef="usd">26324000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i4989a76621c1471d92162c8f0e15b638_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzExLTEtMS0xLTk1NjQy_95b1c924-b271-4f3d-a036-cb9207ab35b4"
      unitRef="usd">32960000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i56ab866e151749e1bdb7dc20db89ec09_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzExLTMtMS0xLTk1NjQy_7e78c4e5-c9d9-4809-9571-3faf09b3c8e0"
      unitRef="usd">25820000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i3f8e4453f2944697b8b9a700fbe81a0c_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzExLTUtMS0xLTk1NjQy_49f33826-be9b-4e2d-8eac-547d0ce4435f"
      unitRef="usd">21260000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i6e2588ef4f664a748f0882add054771e_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEyLTEtMS0xLTk1NjQy_1f51a001-f294-49d6-93ef-1ed162867208"
      unitRef="usd">29660000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i0ed5e495066a478e981d826f729a28f9_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEyLTMtMS0xLTk1NjQy_206bba01-a9c2-4688-b520-40ce35b4c115"
      unitRef="usd">25855000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i518c402416b441209f1e771066a35734_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEyLTUtMS0xLTk1NjQy_51e81564-ded0-4bed-bf85-6fe7ed2f7140"
      unitRef="usd">25073000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEzLTEtMS0xLTk1NjQy_cd0b8d3a-61e0-40d6-b266-1d546b820068"
      unitRef="usd">137011000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEzLTMtMS0xLTk1NjQy_06b53028-8e54-4ef6-b64a-3c876b795f6a"
      unitRef="usd">115009000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzEzLTUtMS0xLTk1NjQy_dcd9482f-cd26-443f-8810-ef1668950f69"
      unitRef="usd">101817000</us-gaap:ShareBasedCompensation>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzE0LTEtMS0xLTk1NjQy_e53e4f2a-6e75-4699-a1de-af13ff9719b6"
      unitRef="usd">26151000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzE0LTMtMS0xLTk1NjQy_aa6b9c4e-7f7a-4786-8807-1e7d39446510"
      unitRef="usd">31891000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzE0LTUtMS0xLTk1NjQy_163d80e9-148d-41f1-b817-bb0107a57675"
      unitRef="usd">28360000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzE1LTEtMS0xLTk1NjQy_40e082af-b0c1-4e0e-b78a-3fe219f7ba81"
      unitRef="usd">110860000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzE1LTMtMS0xLTk1NjQy_d2294092-7e70-44b0-bb4c-ffa6b45edea7"
      unitRef="usd">83118000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo5YWFhMDg0MGIyY2Y0OWU3ODVhMDY3NGY0ZjBiZjNlNi90YWJsZXJhbmdlOjlhYWEwODQwYjJjZjQ5ZTc4NWEwNjc0ZjRmMGJmM2U2XzE1LTUtMS0xLTk1NjQy_236a9816-91f8-47f1-903f-8b83ccadac3c"
      unitRef="usd">73457000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzEwOTk1MTE2Mjk2MjQy_3916b901-2319-4c12-8596-81fa3bb52843">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total unrecognized stock-based compensation expense related to the Company&#x2019;s stock options and Stock Awards as of July&#160;31, 2022 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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Unrecognized Expense&lt;br/&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Expected Recognition Period &lt;br/&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock Options&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,557&#160;&lt;/span&gt;&lt;/td&gt;&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 #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:10pt;font-weight:400;line-height:100%"&gt;1.9&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265,475&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.5&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total unrecognized stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267,032&#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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTplN2JlMzMwMWRkYzk0Yzg5YTY1YTFjYjljNmNjNDYyYy90YWJsZXJhbmdlOmU3YmUzMzAxZGRjOTRjODlhNjVhMWNiOWM2Y2M0NjJjXzEtMS0xLTEtMTA1MTc4_c46b4bd8-fdde-4b2f-a5ef-aa3f91db7b64"
      unitRef="usd">1557000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i064c54564fd74307b82df81b28daac6e_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTplN2JlMzMwMWRkYzk0Yzg5YTY1YTFjYjljNmNjNDYyYy90YWJsZXJhbmdlOmU3YmUzMzAxZGRjOTRjODlhNjVhMWNiOWM2Y2M0NjJjXzEtMy0xLTEtMTA1MTk1_54ec70db-ea0e-42dc-b435-5c6c2b8e990f">P1Y10M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="idb0406a4835c4ea49b35f567b248c737_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTplN2JlMzMwMWRkYzk0Yzg5YTY1YTFjYjljNmNjNDYyYy90YWJsZXJhbmdlOmU3YmUzMzAxZGRjOTRjODlhNjVhMWNiOWM2Y2M0NjJjXzItMS0xLTEtMTA1MTc4_a955dbdc-aa31-4a06-981a-81bcdcb3d0b0"
      unitRef="usd">265475000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTplN2JlMzMwMWRkYzk0Yzg5YTY1YTFjYjljNmNjNDYyYy90YWJsZXJhbmdlOmU3YmUzMzAxZGRjOTRjODlhNjVhMWNiOWM2Y2M0NjJjXzItMy0xLTEtMTA1MTk1_f3d692c6-0e08-40a7-89b4-a49563a38304">P2Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTplN2JlMzMwMWRkYzk0Yzg5YTY1YTFjYjljNmNjNDYyYy90YWJsZXJhbmdlOmU3YmUzMzAxZGRjOTRjODlhNjVhMWNiOWM2Y2M0NjJjXzMtMS0xLTEtMTE2NDIy_e0f945b6-67ca-46cb-bf1f-61e5926fc964"
      unitRef="usd">267032000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUyMTU_8a14148f-b143-4bf7-bdb9-08e98920141e">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of the Company&#x2019;s Stock Awards activity under the Company&#x2019;s equity incentive plans is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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:8pt;font-weight:700;line-height:100%"&gt;Stock Awards Outstanding&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;Number of Stock Awards&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 Grant Date Fair Value&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;&#160;Aggregate Intrinsic Value&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,384,673&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.20&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,427&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,587,664&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Released &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,217,337)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121,915&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(309,302)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;87.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,445,698&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99.34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;287,761&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,429,325&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Released&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,167,291)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;131,188&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(312,764)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,394,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;275,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,942,391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Released&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,202,125)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107.29&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118,669&#160;&lt;/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;text-indent:4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(349,881)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,785,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110.47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,478&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected to vest as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;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:10pt;font-weight:400;line-height:100%"&gt;2,785,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110.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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,478&#160;&lt;/span&gt;&lt;/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="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Aggregate intrinsic value at each period end represents the total market value of Stock Awards at the Company&#x2019;s closing stock price of $77.72, $115.20, and $117.66 on July&#160;31, 2022, 2021, and 2020, respectively. Aggregate intrinsic value for released Stock Awards represents the total market value of released Stock Awards at date of release.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i7e87e05ee20249eca11721321c479f86_I20190731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE1LTEtMS0xLTk1NjQy_e11bd848-ca3e-4d66-aca8-75e3bd3ff6aa"
      unitRef="shares">2384673</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i7e87e05ee20249eca11721321c479f86_I20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE1LTMtMS0xLTk1NjQy_026f1553-b7e4-486c-91b8-a3720880fbd5"
      unitRef="usdPerShare">85.20</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE1LTUtMS0xLTk1NjQy_74a484e6-ba18-4b3e-b740-a7262395b660"
      unitRef="usd">243427000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE2LTEtMS0xLTk1NjQy_ac028e2f-1694-4f33-b5e9-589c4f53c32d"
      unitRef="shares">1587664</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE2LTMtMS0xLTk1NjQy_a478eb52-34e8-47c3-9449-a30747fb0bfa"
      unitRef="usdPerShare">106.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE3LTEtMS0xLTk1NjQy_09b91615-32a1-4a90-a018-ff29888e14e5"
      unitRef="shares">1217337</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE3LTMtMS0xLTk1NjQy_ee3ca2ea-2d4c-4b36-a6f5-bff921b8a0d9"
      unitRef="usdPerShare">82.73</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE3LTUtMS0xLTk1NjQy_02bb4631-e78e-4d2c-b4a4-2b2454d20b66"
      unitRef="usd">121915000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE4LTEtMS0xLTk1NjQy_c09899e9-4cfd-4346-9e5b-bf564873878a"
      unitRef="shares">309302</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="if2ed9a57949b4488b39e65c7f7254b5f_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE4LTMtMS0xLTk1NjQy_d9b2cc2f-08c3-4a24-a048-c24799d13bde"
      unitRef="usdPerShare">87.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i5de89f6de7bd44f9b98873d0ec4f1431_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE5LTEtMS0xLTk1NjQy_b47bf7bf-ec15-4c8a-851b-586e8ce96ff1"
      unitRef="shares">2445698</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i5de89f6de7bd44f9b98873d0ec4f1431_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE5LTMtMS0xLTk1NjQy_a6dfb0fb-e7fa-4ed8-88b7-b098cd2d6d77"
      unitRef="usdPerShare">99.34</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzE5LTUtMS0xLTk1NjQy_d5273f84-0863-44c7-8048-574bcfb841b4"
      unitRef="usd">287761000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIwLTEtMS0xLTk1NjQy_a4f89979-cbba-4b6d-837e-ff2d1aa41b07"
      unitRef="shares">1429325</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIwLTMtMS0xLTk1NjQy_656f113a-d4a3-4e3b-bc10-64998289681e"
      unitRef="usdPerShare">111.22</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIxLTEtMS0xLTk1NjQy_0df67ac5-4aad-4f1f-aa7e-2bb2c012e706"
      unitRef="shares">1167291</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIxLTMtMS0xLTk1NjQy_7bb4ff64-4616-4000-b570-ec239bfbe2e5"
      unitRef="usdPerShare">96.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIxLTUtMS0xLTk1NjQy_b8806173-ba74-4259-bfc1-559979c7272c"
      unitRef="usd">131188000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIyLTEtMS0xLTk1NjQy_ae75237d-6157-45dc-9038-124e7b5f2abd"
      unitRef="shares">312764</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ieb040dd54f8647c2bd16157958f016f4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIyLTMtMS0xLTk1NjQy_771c61d6-0942-4c4e-af4b-46fd8ea4308e"
      unitRef="usdPerShare">103.22</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="iba29b7a5b089488b9bc76bd562958759_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIzLTEtMS0xLTk1NjQy_7c5aa049-4c6b-4ff1-b99a-efa4517ef0ec"
      unitRef="shares">2394968</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="iba29b7a5b089488b9bc76bd562958759_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIzLTMtMS0xLTk1NjQy_ce313195-4d3f-415c-988e-c29bcec13bd6"
      unitRef="usdPerShare">107.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzIzLTUtMS0xLTk1NjQy_ebdfe251-95e9-4254-a0c7-70f462d877a0"
      unitRef="usd">275900000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI0LTEtMS0xLTk4ODMz_905e7e88-4122-49b6-b983-e1033d0ddaa3"
      unitRef="shares">1942391</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI0LTMtMS0xLTk4ODQx_4cca4731-1316-47b5-8a91-cd46c7d1afd9"
      unitRef="usdPerShare">112.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI1LTEtMS0xLTk4ODMz_2b865c6f-0e1a-4a3c-9eb8-2ce5d1340436"
      unitRef="shares">1202125</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI1LTMtMS0xLTk4ODQx_573d17c2-3ffb-4f5e-b407-aca985813ee0"
      unitRef="usdPerShare">107.29</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI1LTUtMS0xLTk4ODQ1_19519a77-676c-4338-a761-006d1aec4616"
      unitRef="usd">118669000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI2LTEtMS0xLTk4ODMz_d87aebad-215d-4456-9bd9-84fae6bea19a"
      unitRef="shares">349881</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ie31595e4e53a4929815391d1e3905932_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI2LTMtMS0xLTk4ODQx_468eaf76-71ad-43b9-bcae-616bae3eff06"
      unitRef="usdPerShare">111.80</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="idb0406a4835c4ea49b35f567b248c737_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI3LTEtMS0xLTk4ODMz_2c49b9f2-cb2e-40eb-9343-2a63ff75346f"
      unitRef="shares">2785353</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="idb0406a4835c4ea49b35f567b248c737_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI3LTMtMS0xLTk4ODQx_8a9dadee-b3ce-4b13-95f9-6660e1208779"
      unitRef="usdPerShare">110.47</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI3LTUtMS0xLTk4ODQ1_0bcb19f0-0318-467f-a425-2989103c2fdd"
      unitRef="usd">216478000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedtoVest
      contextRef="idb0406a4835c4ea49b35f567b248c737_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI0LTEtMS0xLTk1NjQy_b15017e8-a0e2-42e0-b73e-6868b378e7cb"
      unitRef="shares">2785353</gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedtoVest>
    <gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedtoVestWeightedAverageGrantDateFairValue
      contextRef="idb0406a4835c4ea49b35f567b248c737_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI0LTMtMS0xLTk1NjQy_3eba7f14-2215-4039-88ea-7d55f8b23061"
      unitRef="usdPerShare">110.47</gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedtoVestWeightedAverageGrantDateFairValue>
    <gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsAggregateIntrinsicValueExpectedtoVest
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4NGRhYTU3NjAwZDc0Yzc0OGY0OTVmNTQ2YjcyNjRhYy90YWJsZXJhbmdlOjg0ZGFhNTc2MDBkNzRjNzQ4ZjQ5NWY1NDZiNzI2NGFjXzI0LTUtMS0xLTk1NjQy_b8720749-96c6-4c9f-8eeb-2fc78917ec67"
      unitRef="usd">216478000</gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsAggregateIntrinsicValueExpectedtoVest>
    <us-gaap:SharePrice
      contextRef="i150192bda8bd4bbbb461fe73ea8945f2_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzY5Mw_bfea137c-f83f-40a2-bbb3-76535056d058"
      unitRef="usdPerShare">77.72</us-gaap:SharePrice>
    <us-gaap:SharePrice
      contextRef="i66693ebec0264e52831274bb7b737ff2_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzY5Nw_0e99279e-739e-4033-a04f-66826d72dd8f"
      unitRef="usdPerShare">115.20</us-gaap:SharePrice>
    <us-gaap:SharePrice
      contextRef="i6b104583141d44a09787dd7ca0df9381_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzcwNQ_498291ca-3779-430f-980f-19ba2e170026"
      unitRef="usdPerShare">117.66</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="if6891ef2582f4c619c82813c863de726_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzEwMzI_2d47cdda-0dc4-44d2-affa-dd53efd6cb93">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ib4e165cd76d940218270db44c2248ea7_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzEwNDA_47aceb84-dc14-49d4-a2bc-a74077348f14"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i57db18f542884957b145e820a7fb6f58_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzExMDU_7d9d10de-5f00-43f1-9205-49935b7f73ba"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ic609b76953cb4d2e9fc3c2c8a03d0a81_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzEzNDg_cfa6f116-03cb-4e29-a948-35718b05e732">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <gwre:ShareBasedCompensationExpensePerformanceBasedAwards
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzE0Njg_7a9e7a8d-81ab-4eb9-a9c7-f71b12e13124"
      unitRef="usd">14700000</gwre:ShareBasedCompensationExpensePerformanceBasedAwards>
    <gwre:ShareBasedCompensationExpensePerformanceBasedAwards
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzE0NzI_afdb2c85-c7bc-4516-8a8f-10571d3cb000"
      unitRef="usd">13900000</gwre:ShareBasedCompensationExpensePerformanceBasedAwards>
    <gwre:ShareBasedCompensationExpensePerformanceBasedAwards
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzE0ODA_fc75720e-d39c-4890-beb4-4d05df998e9b"
      unitRef="usd">13100000</gwre:ShareBasedCompensationExpensePerformanceBasedAwards>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUyMDA_22604fe9-5225-49ee-86ca-4aa38607b749">option activity under the Company&#x2019;s equity incentive plans is as follows:&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.861%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.808%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.810%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;&#160;Number of Stock 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:8pt;font-weight:700;line-height:100%"&gt;&#160;Weighted Average Exercise 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:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Contractual Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;&#160;Aggregate Intrinsic Value&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;216,727&#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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34.10&#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="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:10pt;font-weight:400;line-height:100%"&gt;5.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,733&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(132,573)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,822)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,058&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(53,932)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,122)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17.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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71.67&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,472)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11.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 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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.7&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested and expected to vest as of July 31, 2022&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:10pt;font-weight:400;line-height:100%"&gt;75,706&#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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.7&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable as of July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;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:10pt;font-weight:400;line-height:100%"&gt;14,806&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;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 style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;827&#160;&lt;/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="padding-left:9pt;text-align:justify;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Aggregate intrinsic value at each fiscal year end represents the difference between the Company&#x2019;s closing stock price of $77.72, $115.20, and $117.66 on July&#160;31, 2022, 2021, and 2020, respectively, and the exercise price of outstanding stock options. Aggregate intrinsic value for exercised options represents the difference between the Company&#x2019;s stock price at date of exercise and the exercise price.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEwLTEtMS0xLTk1NjQy_4cf054b6-5f51-4ff7-831f-109d5bafeaf1"
      unitRef="shares">216727</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEwLTMtMS0xLTk1NjQy_17215b4b-1ed4-4001-b397-36a2f1e1f64e"
      unitRef="usdPerShare">34.10</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i0ef6dc796d0b4d1c84f4b3ee30072763_D20180801-20190731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEwLTUtMS0xLTk1NjQy_81126ebd-7f36-49a0-8a57-74eb0bb79d1c">P5Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEwLTctMS0xLTk1NjQy_fbe2dd44-cd25-4e23-af73-6090c3ba64ba"
      unitRef="usd">14733000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzExLTEtMS0xLTk1NjQy_e71f9cea-da1e-45b1-9917-b7abe0bb66ec"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzExLTMtMS0xLTk1NjQy_8bf5e631-180f-45dd-b04b-c6401745005a"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEyLTEtMS0xLTk1NjQy_b9ee06a8-b97e-4e64-89d3-d671e606f99a"
      unitRef="shares">132573</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEyLTMtMS0xLTk1NjQy_37737e2d-66e9-45fa-9ec8-e007d5358efb"
      unitRef="usdPerShare">37.37</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEyLTctMS0xLTk1NjQy_68c51d4a-ff32-4a42-bb9c-dfbbbf53a56f"
      unitRef="usd">8917000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEzLTEtMS0xLTk1NjQy_64f81518-220a-4ceb-9d8b-4567e81ffe16"
      unitRef="shares">3822</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzEzLTMtMS0xLTk1NjQy_c39884ec-8d9a-42cc-8fe0-eb7fa9d8ce1d"
      unitRef="usdPerShare">10.99</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE0LTEtMS0xLTk1NjQy_bb460d3a-896f-44da-a7c5-c19cd47adae1"
      unitRef="shares">80332</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE0LTMtMS0xLTk1NjQy_983fbd29-3535-42e7-bd2e-599322bfd977"
      unitRef="usdPerShare">29.80</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE0LTUtMS0xLTk1NjQy_821849c7-2fc2-4750-8452-4b40f5aa4c39">P5Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE0LTctMS0xLTk1NjQy_44e305cb-b357-4bb4-98b8-e06d1134b697"
      unitRef="usd">7058000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE1LTEtMS0xLTk1NjQy_335389a6-8cbb-4743-9acc-315877dd6767"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE1LTMtMS0xLTk1NjQy_b20c089a-74f5-4e98-b06c-18729e3510b4"
      unitRef="usdPerShare"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE2LTEtMS0xLTk1NjQy_60040723-f694-4f36-8274-82fdca100a03"
      unitRef="shares">53932</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE2LTMtMS0xLTk1NjQy_6c37100f-f132-4b7b-b741-a1735f8372f5"
      unitRef="usdPerShare">36.00</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE2LTctMS0xLTk1NjQy_89cff364-b9a0-469a-83da-88df1ed723bb"
      unitRef="usd">3986000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE3LTEtMS0xLTk1NjQy_c066e469-d033-4e6d-b3bb-2ae5c7c38ccf"
      unitRef="shares">1122</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE3LTMtMS0xLTk1NjQy_1e6541bb-ce4b-4c47-8671-db16b5969774"
      unitRef="usdPerShare">11.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE4LTEtMS0xLTk1NjQy_23eddbdc-7082-4bc8-9ee4-06d684205783"
      unitRef="shares">25278</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE4LTMtMS0xLTk1NjQy_b1393f43-9029-42b8-8b82-34db69e3973b"
      unitRef="usdPerShare">17.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE4LTUtMS0xLTk1NjQy_071d10e9-4e94-4fca-ad1f-dd6534e913e7">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE4LTctMS0xLTk1NjQy_473e9da5-f026-4f87-9ed3-882f4812e2b5"
      unitRef="usd">2472000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE5LTEtMS0xLTk4ODYx_09b0eedb-d97b-422f-9e1b-05762f7cbba1"
      unitRef="shares">60900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE5LTMtMS0xLTk4ODc1_302d6ea6-3781-417c-9cc6-ada0357df1c6"
      unitRef="usdPerShare">71.67</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTEtMS0xLTk4ODYx_bcd1e7aa-469a-4033-9084-4f711b495ece"
      unitRef="shares">10472</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTMtMS0xLTk4ODc1_c9bbbf58-a7d3-4607-a4b2-1003c8d9327d"
      unitRef="usdPerShare">11.10</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTctMS0xLTk4ODgx_882b144e-eef0-4baa-8d5d-5b7272862322"
      unitRef="usd">1047000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIxLTEtMS0xLTk4ODYx_63d8d872-f5ff-4e56-aafc-595627ba94bd"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIxLTMtMS0xLTk4ODc1_4bfdc91e-1ad6-45de-97dc-2bfb19403850"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIyLTEtMS0xLTk4ODcz_04c6a1a0-8a12-4a40-be8b-dd99b34b1f63"
      unitRef="shares">75706</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIyLTMtMS0xLTk4ODky_03f6c57a-eae5-4dbc-a3a9-35c6382df2be"
      unitRef="usdPerShare">61.93</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIyLTUtMS0xLTk4ODk0_098a44a6-08d6-42b7-a2cc-ccaefd04afb1">P8Y8M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIyLTctMS0xLTk4ODk2_db855501-ed69-4916-abf1-86be72ce0f66"
      unitRef="usd">1196000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE5LTEtMS0xLTk1NjQy_622aeaac-087e-4a73-99f5-ea0ac7b46205"
      unitRef="shares">75706</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE5LTMtMS0xLTk1NjQy_17c0a804-ad5d-4c0f-9e2a-e31adf9f8347"
      unitRef="usdPerShare">61.93</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE5LTUtMS0xLTk1NjQy_ce9c9009-471f-4647-9c70-5815cf3e3594">P8Y8M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzE5LTctMS0xLTk1NjQy_3956e27a-6950-4fc5-9048-a63d3c3693de"
      unitRef="usd">1196000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTEtMS0xLTk1NjQy_69dd500f-e104-45c4-8d07-cd7f16af1592"
      unitRef="shares">14806</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTMtMS0xLTk1NjQy_ada8e4f2-06e6-4e8a-80b7-e39353e74a25"
      unitRef="usdPerShare">21.85</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTUtMS0xLTk1NjQy_f7292f50-744c-4f8d-a8aa-2202f82fdcd0">P3Y7M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo4M2ViYjA5OTBmZjY0NDlhYjZkOGU4NTY2NjViNjU2MC90YWJsZXJhbmdlOjgzZWJiMDk5MGZmNjQ0OWFiNmQ4ZTg1NjY2NWI2NTYwXzIwLTctMS0xLTk1NjQy_7a3d16f5-7028-4645-8e11-c46ee4c30155"
      unitRef="usd">827000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:SharePrice
      contextRef="i150192bda8bd4bbbb461fe73ea8945f2_I20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzE3NDg_bfea137c-f83f-40a2-bbb3-76535056d058"
      unitRef="usdPerShare">77.72</us-gaap:SharePrice>
    <us-gaap:SharePrice
      contextRef="i66693ebec0264e52831274bb7b737ff2_I20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzE3NTI_0e99279e-739e-4033-a04f-66826d72dd8f"
      unitRef="usdPerShare">115.20</us-gaap:SharePrice>
    <us-gaap:SharePrice
      contextRef="i6b104583141d44a09787dd7ca0df9381_I20200731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzE3NjA_498291ca-3779-430f-980f-19ba2e170026"
      unitRef="usdPerShare">117.66</us-gaap:SharePrice>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzEwOTk1MTE2Mjk2MjQz_ae53ba7b-5623-4b92-acc8-9a75baae735f">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the stock options is estimated at the grant date using the Black-Scholes option-pricing model, which included the following assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:5pt;margin-top:10pt;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:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Fiscal year 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 #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected 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:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.00&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.04% - 3.55%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility&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;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31.75% - 31.94%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&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:10pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i91309a2bbc97465792cf432a2e1c4f44_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo1MjgxMTQyN2Y2ODI0NDU0YTEwOGMzNTFmYTk2YTUyNC90YWJsZXJhbmdlOjUyODExNDI3ZjY4MjQ0NTRhMTA4YzM1MWZhOTZhNTI0XzItMS0xLTEtMTAwNTAz_38cd8efc-7d84-4c83-8b5f-fb9d3861329a">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i4d011335cada420cb202ea68f702a553_D20210801-20220731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo1MjgxMTQyN2Y2ODI0NDU0YTEwOGMzNTFmYTk2YTUyNC90YWJsZXJhbmdlOjUyODExNDI3ZjY4MjQ0NTRhMTA4YzM1MWZhOTZhNTI0XzMtMS0xLTEtMTAwNTAzL3RleHRyZWdpb246YWU1NWIxMjI0ODE3NDk4OWFlYmU3Y2NiYjFlODkxZmRfMTA5OTUxMTYyNzc3ODI_9fc4bbb6-7199-4d12-967d-45df4cd46c12"
      unitRef="number">0.0304</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="id8ec2bb1c23e4811a1e94cec7f6b5f4b_D20210801-20220731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo1MjgxMTQyN2Y2ODI0NDU0YTEwOGMzNTFmYTk2YTUyNC90YWJsZXJhbmdlOjUyODExNDI3ZjY4MjQ0NTRhMTA4YzM1MWZhOTZhNTI0XzMtMS0xLTEtMTAwNTAzL3RleHRyZWdpb246YWU1NWIxMjI0ODE3NDk4OWFlYmU3Y2NiYjFlODkxZmRfMTA5OTUxMTYyNzc3OTA_9036ca10-798d-4f96-aa5e-e4b4e13a42b2"
      unitRef="number">0.0355</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i4d011335cada420cb202ea68f702a553_D20210801-20220731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo1MjgxMTQyN2Y2ODI0NDU0YTEwOGMzNTFmYTk2YTUyNC90YWJsZXJhbmdlOjUyODExNDI3ZjY4MjQ0NTRhMTA4YzM1MWZhOTZhNTI0XzQtMS0xLTEtMTAwNTAzL3RleHRyZWdpb246ZjEyZGYwNmY1NzgyNDE2ZTg3NmJlNDMwM2ZjY2FiYTZfMTA5OTUxMTYyNzc3ODU_a2a32c9e-8aa0-4da0-b146-2f91e5cfb1b4"
      unitRef="number">0.3175</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="id8ec2bb1c23e4811a1e94cec7f6b5f4b_D20210801-20220731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo1MjgxMTQyN2Y2ODI0NDU0YTEwOGMzNTFmYTk2YTUyNC90YWJsZXJhbmdlOjUyODExNDI3ZjY4MjQ0NTRhMTA4YzM1MWZhOTZhNTI0XzQtMS0xLTEtMTAwNTAzL3RleHRyZWdpb246ZjEyZGYwNmY1NzgyNDE2ZTg3NmJlNDMwM2ZjY2FiYTZfMTA5OTUxMTYyNzc3OTQ_d0c780aa-71bd-44a3-b004-c27a29a3aaa4"
      unitRef="number">0.3194</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i064c54564fd74307b82df81b28daac6e_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo1MjgxMTQyN2Y2ODI0NDU0YTEwOGMzNTFmYTk2YTUyNC90YWJsZXJhbmdlOjUyODExNDI3ZjY4MjQ0NTRhMTA4YzM1MWZhOTZhNTI0XzUtMS0xLTEtMTAwNTAz_5a66b661-1a71-4a78-9582-8971368cec49"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <gwre:ScheduleofSharebasedPaymentAwardEquityInstrumentsOtherThanOptionsValuationAssumptionsTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUyMzM_c45425b6-9831-4d52-a5f6-4c142b8d5b2e">The fair value of the TSR PSUs is estimated at the grant date using a Monte Carlo simulation model which included the following assumptions:&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:80.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Fiscal year 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.90&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.46%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility of the Company&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28.4%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Average expected volatility of the peer companies in the S&amp;amp;P Index&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</gwre:ScheduleofSharebasedPaymentAwardEquityInstrumentsOtherThanOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="ic2407decfe2d409588ccb75089de5db8_D20190801-20200731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTpjODZjYjZlOTViYzg0MjAxYmViMDQwZmIxNWU3YmJmOC90YWJsZXJhbmdlOmM4NmNiNmU5NWJjODQyMDFiZWIwNDBmYjE1ZTdiYmY4XzItNS0xLTEtOTU2NDI_4b3b5918-6d39-465c-a43f-4ea1f33a5fa1">P2Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="ic2407decfe2d409588ccb75089de5db8_D20190801-20200731"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTpjODZjYjZlOTViYzg0MjAxYmViMDQwZmIxNWU3YmJmOC90YWJsZXJhbmdlOmM4NmNiNmU5NWJjODQyMDFiZWIwNDBmYjE1ZTdiYmY4XzMtNS0xLTEtOTU2NDI_203c77e1-8e48-4d36-9531-291604dff80e"
      unitRef="number">0.0146</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="ic2407decfe2d409588ccb75089de5db8_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTpjODZjYjZlOTViYzg0MjAxYmViMDQwZmIxNWU3YmJmOC90YWJsZXJhbmdlOmM4NmNiNmU5NWJjODQyMDFiZWIwNDBmYjE1ZTdiYmY4XzQtNS0xLTEtOTU2NDI_031d5d13-b0f1-4867-92f6-417448738195"
      unitRef="number">0.284</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateofPeerCompaniesinIndex
      contextRef="ic2407decfe2d409588ccb75089de5db8_D20190801-20200731"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTpjODZjYjZlOTViYzg0MjAxYmViMDQwZmIxNWU3YmJmOC90YWJsZXJhbmdlOmM4NmNiNmU5NWJjODQyMDFiZWIwNDBmYjE1ZTdiYmY4XzUtNS0xLTEtOTU2NDI_a6f2b0af-eef4-4a78-be4c-9d43a98d901c"
      unitRef="number">0.37</gwre:SharebasedCompensationArrangementbySharebasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateofPeerCompaniesinIndex>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="ic2407decfe2d409588ccb75089de5db8_D20190801-20200731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTpjODZjYjZlOTViYzg0MjAxYmViMDQwZmIxNWU3YmJmOC90YWJsZXJhbmdlOmM4NmNiNmU5NWJjODQyMDFiZWIwNDBmYjE1ZTdiYmY4XzYtNS0xLTEtOTU2NDI_9bd24c0e-3d34-475e-a5c3-158c38c37d49"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <gwre:CommonStockReservedForIssuanceTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUyMjc_9c23adb7-59fe-4032-9919-4363d0386214">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022 and 2021, the Company was authorized to issue 500,000,000 shares of common stock with a par value of $0.0001 per share and, of these, 84,084,209 and 83,194,157 shares of common stock were issued and outstanding, respectively. As of July&#160;31, 2022 and 2021, the Company had reserved shares of common stock for future issuance as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;July 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercise of stock options to purchase common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,706&#160;&lt;/span&gt;&lt;/td&gt;&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 #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,278&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vesting of stock awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,785,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,394,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares available under stock plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,360,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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,014,069&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total common stock reserved for issuance&lt;/span&gt;&lt;/td&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:10pt;font-weight:400;line-height:100%"&gt;6,221,718&#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="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:10pt;font-weight:400;line-height:100%"&gt;7,434,315&#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;</gwre:CommonStockReservedForIssuanceTableTextBlock>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzI5NTY_65825ec5-84ac-48a9-a3b7-8eb6495463dd"
      unitRef="shares">500000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzI5NTY_c639e4ae-574c-4af4-9ffb-bbea54fc95b2"
      unitRef="shares">500000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzMwMDI_85cee876-ffb0-471e-89ee-5302a246ec62"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzMwMDI_e5b2d479-0662-4a7d-94f3-f6ed7cf41ad6"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesIssued
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzU0OTc1NTgzMDE3MA_57a516e7-fb54-467d-908f-ab46b7b713fe"
      unitRef="shares">84084209</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzU0OTc1NTgzMDE3MA_df70e883-c43b-4214-a68c-e501a646ab39"
      unitRef="shares">84084209</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:SharesOutstanding
      contextRef="ibe72a1ed1fd3414a8b0628cc817abaf5_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzU0OTc1NTgxOTEzNw_d52daa1c-f4d7-4f26-84b0-0ca8ce2f6183"
      unitRef="shares">83194157</us-gaap:SharesOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzEtMS0xLTEtOTU2NDI_622aeaac-087e-4a73-99f5-ea0ac7b46205"
      unitRef="shares">75706</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzEtMy0xLTEtOTU2NDI_4a68ad7e-b05b-4d49-9ff6-10c7d7db4947"
      unitRef="shares">25278</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzItMS0xLTEtOTU2NDI_ed05ed3e-71b5-4296-b82c-bfb00be2fb8a"
      unitRef="shares">2785353</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzItMy0xLTEtOTU2NDI_eafb1137-08c0-49b1-86b2-55fa77cabca1"
      unitRef="shares">2394968</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzMtMS0xLTEtOTU2NDI_094c99e2-eb23-43a3-b9eb-13f659c80ff3"
      unitRef="shares">3360659</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzMtMy0xLTEtOTU2NDI_a42307ed-6f48-462e-9dbe-90d3428d8a52"
      unitRef="shares">5014069</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzQtMS0xLTEtOTU2NDI_411aae5e-984c-4e11-acde-2bfb21c1af28"
      unitRef="shares">6221718</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90YWJsZTo3ZWYxNTBjMTgwN2M0YjM3ODQwZDdhNWRhMDNiYmJjZC90YWJsZXJhbmdlOjdlZjE1MGMxODA3YzRiMzc4NDBkN2E1ZGEwM2JiYmNkXzQtMy0xLTEtOTU2NDI_036b9b76-495c-4f7e-8b47-27ed9590f94b"
      unitRef="shares">7434315</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i34e9c6fa1f2842bcacdccfc392048dfc_I20201215"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzM0MDk_7db512bf-41ed-4cf8-8e07-cce2e2078095"
      unitRef="shares">5000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="iab0e00a0d5f94d459daf90c263906728_I20201031"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzQ0ODU_21fbd3c0-9258-46d3-a2a7-95c29396bcec"
      unitRef="usd">200000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUwMjU_e8877a3f-4f99-4eb8-bf8f-2626246a6d06"
      unitRef="shares">322545</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUwNzQ_18d2171b-eacc-4583-8293-9d13107ecddf"
      unitRef="usdPerShare">116.11</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzUxMjM_a8b4c9a2-2bbc-4725-bae0-e3dad4109fa1"
      unitRef="usd">37500000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzU0OTc1NTgzMTM3Nw_e89aa36b-90ab-4a77-ac76-17ed73da815c"
      unitRef="shares">1488991</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzU0OTc1NTgzMTM4Ng_1296f9cc-d765-44ab-bb7e-892d07197f85"
      unitRef="usdPerShare">109.17</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjQvZnJhZzpiMTZlN2ZmODIwOWI0Y2E3YmJhZjAyMTBmODdjZDAwOS90ZXh0cmVnaW9uOmIxNmU3ZmY4MjA5YjRjYTdiYmFmMDIxMGY4N2NkMDA5XzU0OTc1NTgzMTM5Ng_f164f595-2e72-43b4-b50e-082e0072bae2"
      unitRef="usd">162500000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxMTE_9e80ddd5-46aa-4290-b9f7-3535df78fe9d">Income Taxes&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized an income tax benefit of $49.3 million for fiscal year 2022 compared to an income tax benefit of  $37.8 million for fiscal year 2021. The increase in the Company&#x2019;s income tax benefit for fiscal year 2022 was primarily due to an increase in pre-tax net loss, an increase in research and development credits, and a decrease in valuation allowance, partially offset by decreases in tax benefits such as the tax deductions from stock-based compensation, the tax impact from the tax status change of certain foreign subsidiaries from the prior year, and the release of uncertain tax positions from the prior year.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effective tax rate could differ from the statutory U.S. Federal income tax rate of 21% mainly due to state taxes, tax deficiencies related to stock-based compensation, research and development credits, foreign earnings taxed in the United States, change in valuation allowance and certain non-deductible expenses, including, but not limited to, executive compensation limitation. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s income (loss) before provision for (benefit from) income taxes is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(239,601)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(114,687)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(34,121)&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:10pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income (loss) before provision for (benefit from) income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(229,715)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(104,281)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24,331)&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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for (benefit from) income taxes consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,605)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;299&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178&#160;&lt;/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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,016)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48,775)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(31,174)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,125)&lt;/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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,656)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,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:10pt;font-weight:400;line-height:100%"&gt;(1,357)&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(112)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(445)&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(53,116)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(35,758)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,927)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total provision for (benefit from) income taxes &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(49,284)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37,774)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,867&#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="padding-left:18pt;text-indent:-18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Differences between income taxes calculated using the statutory federal income tax rate of 21% in the fiscal years ended July&#160;31, 2022, 2021, and 2020, and the provision for income taxes are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Statutory federal income tax&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48,240)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(21,899)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,109)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State taxes, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,613)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,173)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,179)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,247)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,971)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-deductible officers' compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,484&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign income taxed at different rates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(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:10pt;font-weight:400;line-height:100%"&gt;(854)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(235)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,820)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,377)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,905)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Base erosion and anti-abuse tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,702)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax status change of certain foreign subsidiaries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-deductible acquisition 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:10pt;font-weight:400;line-height:100%"&gt;744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Permanent differences and others&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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:10pt;font-weight:400;line-height:100%"&gt;829&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total provision for (benefit from) income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(49,284)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37,774)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,867&#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:24.75pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The tax effects of temporary differences that gave rise to significant portions of deferred tax assets and liabilities are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt"&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.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;As of 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accruals and reserves&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,773&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,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;/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:10pt;font-weight:400;line-height:100%"&gt;Capitalized R&amp;amp;D&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Lease 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:10pt;font-weight:400;line-height:100%"&gt;27,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,832&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110,064&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;113,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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97,113&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Total deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;295,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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;235,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,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:10pt;font-weight:400;line-height:100%"&gt;44,797&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less deferred tax liabilities:&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible 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:10pt;font-weight:400;line-height:100%"&gt;8,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,343&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,661&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Convertible debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,028&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unremitted foreign earnings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capitalized commissions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,078&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Total deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;51,889&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,461&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:10pt;font-weight:400;line-height:100%"&gt;Less foreign 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:10pt;font-weight:400;line-height:100%"&gt;1,910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,045&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;189,551&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,383&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considered both positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, tax planning strategies, differences between prior book and tax profits/losses, and results of future operations, and determined that a valuation allowance was not required for a significant portion of its deferred tax assets. A valuation allowance of $52.1 million and $44.8 million remained as of July&#160;31, 2022 and 2021, respectively, primarily related to California, Federal and Canada deferred tax assets. The increase of $7.3 million in the valuation allowance in the current fiscal year relates primarily to net operating losses, and income tax credits in certain tax jurisdictions for which no tax benefit is expected to be recognized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022, the Company had U.S. Federal, California, and other states net operating loss (&#x201c;NOL&#x201d;) carryforwards of $438.4 million, $68.8 million and $229.2 million, respectively. The U.S. Federal and California NOL carryforwards will start to expire in 2029 and 2023, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022, the Company had research and development tax credits (&#x201c;R&amp;amp;D credit&#x201d;) carryforwards of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&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:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,056&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;California&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Total R&amp;amp;D credit carryforwards&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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110,366&#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:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The U.S. Federal R&amp;amp;D credits will start to expire in 2023 and the California R&amp;amp;D tax credits do not expire.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Federal and California laws impose restrictions on the utilization of NOL carryforwards and R&amp;amp;D credit carryforwards in the event of a change in ownership of the Company, as defined by Internal Revenue Code 382 and 383. The Company experienced an ownership change in the past that does not materially impact the availability of its carryforwards. However, should there be an ownership change in the future, the Company&#x2019;s ability to utilize existing carryforwards could be substantially restricted.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022, the Company has recorded a provisional estimate for foreign withholding taxes on undistributed earnings from foreign subsidiaries of $0.7&#160;million. The Company may repatriate foreign earnings in the future to the extent that the repatriation is not restricted by local laws or there are no substantial incremental costs associated with such repatriation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Tax Act amended Internal Revenue Code Section 174 to require that specific research and experimental (&#x201c;R&amp;amp;E&#x201d;) expenditures be capitalized and amortized over five years (U.S. R&amp;amp;E) or fifteen years (non-U.S. R&amp;amp;E) beginning in the Company&#x2019;s fiscal year 2023. Although Congress has considered legislation that would defer, modify or repeal the capitalization and amortization requirement, there is no assurance that the provision will be deferred, repealed, or otherwise modified. If the requirement is not modified, the Company may be required to utilize some of its federal and state tax attributes and there may be increases to state cash taxes or tax expense.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-indent:24.75pt"&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;Unrecognized Tax Benefits&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Activity related to unrecognized tax benefits is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits - beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,633&#160;&lt;/span&gt;&lt;/td&gt;&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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross increases - prior period tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,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 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross decreases - prior period tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,769)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(147)&lt;/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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross increases - current period tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,501&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits - end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended July&#160;31, 2022, the Company&#x2019;s unrecognized tax benefits increased by $1.6 million. As of July&#160;31, 2022, the Company had unrecognized tax benefits of $11.8 million that, if recognized, would affect the Company&#x2019;s effective tax rate, as certain unrecognized tax benefits have a valuation allowance. The Company recognizes interest and penalties related to unrecognized tax benefits as income tax expense in its consolidated statements of operations. As of July&#160;31, 2022, the Company has accrued total interest and penalties related to unrecognized tax benefits of $0.8&#160;million. &lt;/span&gt;&lt;/div&gt;The Company, or one of its subsidiaries, files income taxes in the U.S. Federal jurisdiction and various state and foreign jurisdictions. If the Company utilizes NOL carryforwards or tax credits in future years, the U.S. Federal, state and local, and non-U.S. tax authorities may examine the tax returns covering the period in which the net operating losses and tax credits arose. As a result, the Company&#x2019;s tax returns in the U.S. and California remain open to examination from fiscal years 2002 through 2021.</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzcy_9f1b4b6c-a111-4243-99dd-c1ea7e9eac12"
      unitRef="usd">-49300000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzEzNA_d86bcde2-a7eb-4a21-b24f-c434abf216dd"
      unitRef="usd">-37800000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxMTc_0e85059c-1b94-4c4f-94e1-aabfd506bf20">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s income (loss) before provision for (benefit from) income taxes is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(239,601)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(114,687)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(34,121)&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:10pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,790&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income (loss) before provision for (benefit from) income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(229,715)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(104,281)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24,331)&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:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i4c6a523cee86456bbbf7686f7c64b79b_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzItMS0xLTEtOTU2NDI_0932b4ac-8a9a-4c46-ad68-fff4174959a2"
      unitRef="usd">-239601000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ie220610b07fd4a8db05ba19e87899fb4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzItMy0xLTEtOTU2NDI_5f26a223-79e2-4d3b-999c-d39c5fd56da1"
      unitRef="usd">-114687000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ied6e3a66369c409596bef635348314e5_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzItNS0xLTEtOTU2NDI_43262f87-3ad2-41ca-b174-ac7906b8f0f3"
      unitRef="usd">-34121000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="idd6daf7f47d343ada0977d8df80475c9_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzMtMS0xLTEtOTU2NDI_b9e7d1d1-e221-4aca-9c1f-bc63f662029a"
      unitRef="usd">9886000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i97b5d523cb7441aca5246508418badbe_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzMtMy0xLTEtOTU2NDI_80b6aa92-e00f-4109-83e2-f64ecc2050d6"
      unitRef="usd">10406000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ie40931541bea4ac19843c9004519bd74_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzMtNS0xLTEtOTU2NDI_07380068-fa19-4e7c-b437-acd349d8180c"
      unitRef="usd">9790000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzQtMS0xLTEtOTU2NDI_bcf2884e-1841-402c-9fc8-d10a49bd11d4"
      unitRef="usd">-229715000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzQtMy0xLTEtOTU2NDI_816c0149-9b0f-46c3-910f-e020db220a74"
      unitRef="usd">-104281000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpmYTAyOGVmYmU0MjY0ZmQ3ODRhMDJlMDZiNTUwNDlhMi90YWJsZXJhbmdlOmZhMDI4ZWZiZTQyNjRmZDc4NGEwMmUwNmI1NTA0OWEyXzQtNS0xLTEtOTU2NDI_048e9d3b-f8b0-49a0-8e33-891943b4a077"
      unitRef="usd">-24331000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxNTE_ab0602dc-8f39-4de3-ac71-b5ad681be464">&lt;div style="margin-top:9pt;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for (benefit from) income taxes consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,605)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;299&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178&#160;&lt;/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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,832&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,016)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48,775)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(31,174)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,125)&lt;/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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,656)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,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:10pt;font-weight:400;line-height:100%"&gt;(1,357)&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(112)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(445)&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(53,116)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(35,758)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,927)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total provision for (benefit from) income taxes &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(49,284)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37,774)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,867&#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="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzMtMS0xLTEtOTU2NDI_bee99828-9a17-4dd1-af89-a6b95eda5b06"
      unitRef="usd">1937000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzMtMy0xLTEtOTU2NDI_f3695784-c44a-412c-a432-0a5eb5514562"
      unitRef="usd">-5605000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzMtNS0xLTEtOTU2NDI_a9797dad-59bb-4467-bb0e-dedc798bcf38"
      unitRef="usd">13077000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzQtMS0xLTEtOTU2NDI_d1a68f07-1ee3-451e-888b-f66bc2a64e9a"
      unitRef="usd">43000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzQtMy0xLTEtOTU2NDI_8e5d2815-16ba-472e-b0e1-fcc326f2733d"
      unitRef="usd">299000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzQtNS0xLTEtOTU2NDI_d16b45e3-988e-4e0e-8714-03c33091688a"
      unitRef="usd">178000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzUtMS0xLTEtOTU2NDI_fc22a194-20e2-40e3-b25c-aa0167916188"
      unitRef="usd">1852000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzUtMy0xLTEtOTU2NDI_96fb30c7-59fb-4112-885a-1a7da76a3232"
      unitRef="usd">3290000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzUtNS0xLTEtOTU2NDI_abe0f289-f774-47b1-8bf6-f254813580ef"
      unitRef="usd">1539000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzYtMS0xLTEtOTU2NDI_b4f36d98-1447-4e19-bc1a-1e452d0b4bdb"
      unitRef="usd">3832000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzYtMy0xLTEtOTU2NDI_14993949-e7b5-4e9d-9b73-56492bdf9d5e"
      unitRef="usd">-2016000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzYtNS0xLTEtOTU2NDI_3fb9b68f-fa7a-4563-91f3-7284508f71c0"
      unitRef="usd">14794000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzgtMS0xLTEtOTU2NDI_a3db9db9-cd7c-492e-8f74-397bcc0864e7"
      unitRef="usd">-48775000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzgtMy0xLTEtOTU2NDI_7fc90850-4592-4bf7-a355-13ad0fab38c4"
      unitRef="usd">-31174000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzgtNS0xLTEtOTU2NDI_147e2f0f-6591-43eb-8420-0bea79f38cc3"
      unitRef="usd">-10125000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzktMS0xLTEtOTU2NDI_7818e743-1a73-4ad7-9690-bd446bb2c6f2"
      unitRef="usd">-5656000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzktMy0xLTEtOTU2NDI_31e146c4-ac05-4d38-9b49-f42a1aba4f7e"
      unitRef="usd">-4472000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzktNS0xLTEtOTU2NDI_cb4c4999-36d0-4859-95ea-1542f221d56a"
      unitRef="usd">-1357000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzEwLTEtMS0xLTk1NjQy_08a50a55-a38c-470b-ae1e-3add80e4f517"
      unitRef="usd">1315000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzEwLTMtMS0xLTk1NjQy_cd2c4d0a-d4fd-4c87-b681-d0044d9f00d9"
      unitRef="usd">-112000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzEwLTUtMS0xLTk1NjQy_26fa97b1-d640-482d-ac97-3ad326b97bd8"
      unitRef="usd">-445000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzExLTEtMS0xLTk1NjQy_cd80f4d0-5e05-437d-8310-9fac9f5dfc70"
      unitRef="usd">-53116000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzExLTMtMS0xLTk1NjQy_a37ecb07-95f8-4ad6-a945-ce7876e84958"
      unitRef="usd">-35758000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzExLTUtMS0xLTk1NjQy_da972192-e6aa-4bc1-baf2-b7714a58edb1"
      unitRef="usd">-11927000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzEyLTEtMS0xLTk1NjQy_20b462f4-013e-459b-a79e-5541c827923f"
      unitRef="usd">-49284000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzEyLTMtMS0xLTk1NjQy_d068cf9f-bddd-47e4-82cf-adf7eab1a43b"
      unitRef="usd">-37774000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo3YjQ3MzA3MTZlNTQ0NDBhYjQzZjY0ODg5ZmVjYmNlMy90YWJsZXJhbmdlOjdiNDczMDcxNmU1NDQ0MGFiNDNmNjQ4ODlmZWNiY2UzXzEyLTUtMS0xLTk1NjQy_49373adb-41f3-4aef-a86e-9fef86725b8a"
      unitRef="usd">2867000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxMDk_396cb678-7e4b-47ac-b360-1063fb7111e4">Differences between income taxes calculated using the statutory federal income tax rate of 21% in the fiscal years ended July&#160;31, 2022, 2021, and 2020, and the provision for income taxes are as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Statutory federal income tax&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48,240)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(21,899)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,109)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State taxes, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,613)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,173)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,179)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,247)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,971)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-deductible officers' compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,484&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign income taxed at different rates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(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:10pt;font-weight:400;line-height:100%"&gt;(854)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(235)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,820)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,377)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,905)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Base erosion and anti-abuse tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;349&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,702)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax status change of certain foreign subsidiaries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,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;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-deductible acquisition 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:10pt;font-weight:400;line-height:100%"&gt;744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Permanent differences and others&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;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:10pt;font-weight:400;line-height:100%"&gt;829&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total provision for (benefit from) income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(49,284)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37,774)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzItMS0xLTEtOTU2NDI_ec302773-3d2d-43f8-b027-fd3cbcc499cf"
      unitRef="usd">-48240000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzItMy0xLTEtOTU2NDI_f9048abc-011a-40f9-89ab-e7b5e49fb697"
      unitRef="usd">-21899000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzItNS0xLTEtOTU2NDI_53183c0b-b688-4ae4-984c-0d172ca17a65"
      unitRef="usd">-5109000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzMtMS0xLTEtOTU2NDI_77338b76-15d8-493a-980a-ec7927a8a877"
      unitRef="usd">-5613000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzMtMy0xLTEtOTU2NDI_c2e8ad9c-faf3-41f1-a2bc-43bd878bc37b"
      unitRef="usd">-4173000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzMtNS0xLTEtOTU2NDI_d84ffd8f-7e55-4495-8287-ddf0317a9f0e"
      unitRef="usd">-1179000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzQtMS0xLTEtOTU2NDI_0dcf5673-5f9c-45ab-8237-630b1f94167a"
      unitRef="usd">2912000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzQtMy0xLTEtOTU2NDI_c07ffb76-0e3d-45d0-975d-c0ce040754be"
      unitRef="usd">-3247000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzQtNS0xLTEtOTU2NDI_ccadb75a-0112-43da-900b-f7c9d156ffcf"
      unitRef="usd">-2971000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzUtMS0xLTEtOTU2NDI_9de0f159-913d-4718-9b77-0f2c0a662ef1"
      unitRef="usd">4484000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzUtMy0xLTEtOTU2NDI_f5b1b225-48ef-484e-891e-11314a7b396a"
      unitRef="usd">3682000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzUtNS0xLTEtOTU2NDI_3b8fc7ba-d5fc-4cef-8ef9-4608a60c4b24"
      unitRef="usd">3634000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzYtMS0xLTEtOTU2NDI_ef72fef4-083a-468a-aa10-1053d0186456"
      unitRef="usd">-365000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzYtMy0xLTEtOTU2NDI_2037583e-9433-497f-919e-7eb8753a1eab"
      unitRef="usd">-854000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzYtNS0xLTEtOTU2NDI_184e9af0-0b9c-4082-9bab-6df69cd4f2ca"
      unitRef="usd">-235000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzctMS0xLTEtOTU2NDI_c76c69b9-6d95-4b83-b85a-fbbdb44c41f7"
      unitRef="usd">6820000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzctMy0xLTEtOTU2NDI_5b9e9e05-7820-489a-9b37-941ff6602b1e"
      unitRef="usd">5377000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:IncomeTaxReconciliationTaxCreditsResearch
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzctNS0xLTEtOTU2NDI_5c053a14-0947-4932-839c-62120f726d33"
      unitRef="usd">4905000</us-gaap:IncomeTaxReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzgtMS0xLTEtOTU2NDI_07e79ec3-5b52-48ee-b212-34468f81ca82"
      unitRef="usd">349000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzgtMy0xLTEtOTU2NDI_de0193f3-4f1c-4355-80ae-ad803d2f4ada"
      unitRef="usd">-7702000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzgtNS0xLTEtOTU2NDI_c1bb1c16-27b5-4e15-8fab-d099587a5b4b"
      unitRef="usd">11381000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount>
    <gwre:EffectiveIncomeTaxRateReconciliationReMeasurementOfUSDeferredTaxesAmount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzktMS0xLTEtOTU2NDI_677db779-57ce-4db2-9d2a-e86dd1931e19"
      unitRef="usd">1201000</gwre:EffectiveIncomeTaxRateReconciliationReMeasurementOfUSDeferredTaxesAmount>
    <gwre:EffectiveIncomeTaxRateReconciliationReMeasurementOfUSDeferredTaxesAmount
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzktMy0xLTEtOTU2NDI_6e6866bc-ed51-4669-a37f-a037a1e81dcb"
      unitRef="usd">-1830000</gwre:EffectiveIncomeTaxRateReconciliationReMeasurementOfUSDeferredTaxesAmount>
    <gwre:EffectiveIncomeTaxRateReconciliationReMeasurementOfUSDeferredTaxesAmount
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzktNS0xLTEtOTU2NDI_46efc750-ec60-4f9f-8e1a-12158992c9ab"
      unitRef="usd">0</gwre:EffectiveIncomeTaxRateReconciliationReMeasurementOfUSDeferredTaxesAmount>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseOther
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEwLTEtMS0xLTk1NjQy_fc865b6c-90ac-40c5-9cd8-17f3342f74da"
      unitRef="usd">744000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseOther>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseOther
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEwLTMtMS0xLTk1NjQy_f0bff523-e68c-4fa0-a71d-fec52b6d25e0"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationNondeductibleExpenseOther>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseOther
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEwLTUtMS0xLTk1NjQy_2663a2e1-5802-463a-bbd5-528086c3c11e"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationNondeductibleExpenseOther>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEyLTEtMS0xLTk1NjQy_fc05929e-61f4-4f43-b0b3-359302610eba"
      unitRef="usd">476000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEyLTMtMS0xLTk1NjQy_f32afe5e-b659-474b-8c42-a7f8e6544d49"
      unitRef="usd">495000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEyLTUtMS0xLTk1NjQy_6fb9197e-756a-4e5c-9d18-ae6d27f26af0"
      unitRef="usd">829000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEzLTEtMS0xLTk1NjQy_9a856a17-a175-4a42-98ae-57d334691b24"
      unitRef="usd">1588000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEzLTMtMS0xLTk1NjQy_35bec1f1-97d1-418a-a5d5-0df590536568"
      unitRef="usd">3131000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzEzLTUtMS0xLTk1NjQy_bb876517-acfc-41e1-8c04-cf7c9ebc9d6d"
      unitRef="usd">1422000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzE0LTEtMS0xLTk1NjQy_6dcd4d15-cf74-4d14-9743-012eb4e72d0c"
      unitRef="usd">-49284000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzE0LTMtMS0xLTk1NjQy_9f086203-e04d-4bca-873f-ef187ad703e3"
      unitRef="usd">-37774000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTozYzUyMmQ2MTc4MjY0OGMzOTJkNmY1MTA4NjIxZGVjNi90YWJsZXJhbmdlOjNjNTIyZDYxNzgyNjQ4YzM5MmQ2ZjUxMDg2MjFkZWM2XzE0LTUtMS0xLTk1NjQy_8a5db728-3a77-49a7-afa4-b7730d16968a"
      unitRef="usd">2867000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxNDI_e1cb6ab0-7cf3-4721-bc72-7b706a4fd2c7">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The tax effects of temporary differences that gave rise to significant portions of deferred tax assets and liabilities are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt"&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.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;As of 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accruals and reserves&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,773&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,953&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,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;/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:10pt;font-weight:400;line-height:100%"&gt;Capitalized R&amp;amp;D&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Lease 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:10pt;font-weight:400;line-height:100%"&gt;27,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,832&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110,064&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax credits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;113,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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97,113&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Total deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;295,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 colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;235,998&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,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:10pt;font-weight:400;line-height:100%"&gt;44,797&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less deferred tax liabilities:&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible 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:10pt;font-weight:400;line-height:100%"&gt;8,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,343&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,661&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Convertible debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,028&#160;&lt;/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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unremitted foreign earnings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Capitalized commissions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,078&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;Total deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;51,889&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,461&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,428&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="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:10pt;font-weight:400;line-height:100%"&gt;Less foreign 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:10pt;font-weight:400;line-height:100%"&gt;1,910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,045&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;189,551&#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="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137,383&#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:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzItMS0xLTEtOTU2NDI_c0e2408c-fb6e-4a1b-9578-b10f70b4fc4a"
      unitRef="usd">27632000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzItMy0xLTEtOTU2NDI_09c5895b-5e39-4d69-9f31-d5c3de68d0ca"
      unitRef="usd">15773000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzMtMS0xLTEtOTU2NDI_b1ace96b-e38d-4f9a-b837-3596cf1d3ceb"
      unitRef="usd">7953000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzMtMy0xLTEtOTU2NDI_6bf41e04-21af-46d9-ad3a-ff183d03aaf3"
      unitRef="usd">7133000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzQtMS0xLTEtOTU2NDI_fdffdf90-941c-4040-b33b-c6a857140a26"
      unitRef="usd">1794000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzQtMy0xLTEtOTU2NDI_02a7f8b1-bfff-45cc-97bf-f90bbb7818fd"
      unitRef="usd">3527000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzUtMS0xLTEtOTU2NDI_9a06e7f4-7269-4cfc-9e23-246924cd3473"
      unitRef="usd">7158000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzUtMy0xLTEtOTU2NDI_fea0ca8b-2b2d-4ff3-a3a3-ca65ab45247e"
      unitRef="usd">8377000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <gwre:DeferredTaxAssetsLeaseLiabilities
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzYtMS0xLTEtOTU2NDI_e455501c-9756-414c-84d4-aec10b4341ba"
      unitRef="usd">27525000</gwre:DeferredTaxAssetsLeaseLiabilities>
    <gwre:DeferredTaxAssetsLeaseLiabilities
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzYtMy0xLTEtOTU2NDI_b884af8b-bc53-4af5-abe2-806109ecfefd"
      unitRef="usd">30832000</gwre:DeferredTaxAssetsLeaseLiabilities>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzctMS0xLTEtOTU2NDI_251a2203-befb-4741-baff-8c175dfd309d"
      unitRef="usd">110064000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzctMy0xLTEtOTU2NDI_be06930c-23a3-4f61-b2d5-c1a895cf77e2"
      unitRef="usd">73243000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzgtMS0xLTEtOTU2NDI_6446f293-eefc-436b-bd24-bdcd16cc2453"
      unitRef="usd">113357000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzgtMy0xLTEtOTU2NDI_0b77bd14-02c9-47e7-a215-dcd917ec8153"
      unitRef="usd">97113000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzktMS0xLTEtOTU2NDI_974d510b-d9a6-4911-922b-dbd015c2f17d"
      unitRef="usd">295483000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzktMy0xLTEtOTU2NDI_5389358c-7aa0-42a2-bc93-398284eb7f3b"
      unitRef="usd">235998000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzEwLTEtMS0xLTk1NjQy_5d54b402-a008-426f-bb90-3cc5ccb7064a"
      unitRef="usd">52133000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzEwLTMtMS0xLTk1NjQy_e16469b2-cab8-4d3e-9677-a5182b625f07"
      unitRef="usd">44797000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzExLTEtMS0xLTk1NjQy_fd1135d4-df2e-401a-9d0e-f68faa5903f0"
      unitRef="usd">243350000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzExLTMtMS0xLTk1NjQy_f058c537-5395-41de-91b5-61eff199766f"
      unitRef="usd">191201000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzEzLTEtMS0xLTk1NjQy_4f710267-243e-472e-8b0a-1db4445d43eb"
      unitRef="usd">8888000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzEzLTMtMS0xLTk1NjQy_3e8542e0-9252-46bd-8a50-2021b6da1d4a"
      unitRef="usd">4109000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesLeasingArrangements
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE0LTEtMS0xLTk1NjQy_b3b17599-e099-4cb0-9b70-b8c2772ec7e8"
      unitRef="usd">20706000</us-gaap:DeferredTaxLiabilitiesLeasingArrangements>
    <us-gaap:DeferredTaxLiabilitiesLeasingArrangements
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE0LTMtMS0xLTk1NjQy_6ba109d2-204b-41ff-911f-e82818f59d18"
      unitRef="usd">23343000</us-gaap:DeferredTaxLiabilitiesLeasingArrangements>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE1LTEtMS0xLTk1NjQy_62bacb2e-0616-487f-b52d-e0e8575e86a3"
      unitRef="usd">6161000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE1LTMtMS0xLTk1NjQy_3e610a90-68a1-4f35-8436-8046d7191528"
      unitRef="usd">7661000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <gwre:DeferredTaxLiabilitiesConvertibleDebt
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE2LTEtMS0xLTk1NjQy_68f47f3d-8e83-455e-92e6-5efcb5cf392a"
      unitRef="usd">5250000</gwre:DeferredTaxLiabilitiesConvertibleDebt>
    <gwre:DeferredTaxLiabilitiesConvertibleDebt
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE2LTMtMS0xLTk1NjQy_c48b11f5-5b10-411b-923b-93bc3450ac8b"
      unitRef="usd">7028000</gwre:DeferredTaxLiabilitiesConvertibleDebt>
    <us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE3LTEtMS0xLTk1NjQy_a9d20b65-e9bb-4e28-b220-bfe211dbf50a"
      unitRef="usd">710000</us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings>
    <us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE3LTMtMS0xLTk1NjQy_492dd79c-ce03-41b3-bae4-5af4a58f3764"
      unitRef="usd">554000</us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings>
    <gwre:DeferredTaxLiabilitiesCapitalizedCommissions
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE4LTEtMS0xLTk1NjQy_b749f5b5-3a8e-4a57-badb-fa0731debc56"
      unitRef="usd">10174000</gwre:DeferredTaxLiabilitiesCapitalizedCommissions>
    <gwre:DeferredTaxLiabilitiesCapitalizedCommissions
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE4LTMtMS0xLTk1NjQy_5ce1f143-1636-454d-8cd3-81a6806c851c"
      unitRef="usd">10078000</gwre:DeferredTaxLiabilitiesCapitalizedCommissions>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE5LTEtMS0xLTk1NjQy_26e45c9c-3912-40c8-b381-63d3fab8df5f"
      unitRef="usd">51889000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzE5LTMtMS0xLTk1NjQy_65efdec1-7edd-43ed-a6ca-913e954f9b0c"
      unitRef="usd">52773000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzIwLTEtMS0xLTk1NjQy_e9b62522-5b63-446a-96f3-606a64b581e8"
      unitRef="usd">191461000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzIwLTMtMS0xLTk1NjQy_1eac25e3-a16e-4df5-8fcb-5b5142630491"
      unitRef="usd">138428000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <gwre:DeferredTaxLiabilitiesForeignCapitalizedCommissions
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzIyLTEtMS0xLTk1NjQy_47f73a85-f1d1-4d5f-aa49-fa4e3c0f2852"
      unitRef="usd">1910000</gwre:DeferredTaxLiabilitiesForeignCapitalizedCommissions>
    <gwre:DeferredTaxLiabilitiesForeignCapitalizedCommissions
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzIyLTMtMS0xLTk1NjQy_724c0580-39f2-4cfd-85b9-d024bd9756c8"
      unitRef="usd">1045000</gwre:DeferredTaxLiabilitiesForeignCapitalizedCommissions>
    <gwre:DeferredTaxAssetsLessDeferredRevenue
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzIzLTEtMS0xLTk1NjQy_bd3b2e4f-d70c-464b-b0d6-de119c13475f"
      unitRef="usd">189551000</gwre:DeferredTaxAssetsLessDeferredRevenue>
    <gwre:DeferredTaxAssetsLessDeferredRevenue
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZToxNzEyNTgxNWM4N2U0ODYyYWZiYjgxZjk2OGQyNWNkOC90YWJsZXJhbmdlOjE3MTI1ODE1Yzg3ZTQ4NjJhZmJiODFmOTY4ZDI1Y2Q4XzIzLTMtMS0xLTk1NjQy_eb3ef39c-6dc3-4e2a-8305-2af94f92ddd2"
      unitRef="usd">137383000</gwre:DeferredTaxAssetsLessDeferredRevenue>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzE4ODg_62ab1a03-0b18-48f2-b503-1f5ba9400f8b"
      unitRef="usd">52100000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzE4OTU_35ed83c0-ee86-46bb-b42c-cfca8af3e4fc"
      unitRef="usd">44800000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzIwMTk_bcf6b263-a25f-4e6f-bc14-cf8609e2223c"
      unitRef="usd">7300000</us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i8013ab5a802b408cb6b027bd6976f84c_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzIzMzg_364d53ce-e835-4439-b7d2-91fd83cfae7d"
      unitRef="usd">438400000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i347f18ecb569455fb1114ae171e924f2_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzIzNDI_25e46a44-9cc7-40a1-a07c-faf9671c1b95"
      unitRef="usd">68800000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i2e3a7bc30aa742a68afcb36d62c776c9_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzIzNDk_affb70fa-a0e4-4411-8f1a-ea6e24645420"
      unitRef="usd">229200000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:SummaryOfOperatingLossCarryforwardsTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxMzM_ac5bf49a-594e-4581-87d1-0c78616ffc44">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of July&#160;31, 2022, the Company had research and development tax credits (&#x201c;R&amp;amp;D credit&#x201d;) carryforwards of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.984%"/&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:10pt;font-weight:400;line-height:100%"&gt;U.S. Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,056&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;California&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;Total R&amp;amp;D credit carryforwards&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:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;110,366&#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:SummaryOfOperatingLossCarryforwardsTextBlock>
    <gwre:ResearchAndDevelopmentCreditsCarryforwards
      contextRef="i4c6a523cee86456bbbf7686f7c64b79b_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo4YmE3MjBiZjViNTM0Y2EzYjk1NmJiMWJiNjU2ODUwMy90YWJsZXJhbmdlOjhiYTcyMGJmNWI1MzRjYTNiOTU2YmIxYmI2NTY4NTAzXzAtMi0xLTEtOTU2NDI_6f915458-684c-4250-91ee-e2a8c025c00b"
      unitRef="usd">60056000</gwre:ResearchAndDevelopmentCreditsCarryforwards>
    <gwre:ResearchAndDevelopmentCreditsCarryforwards
      contextRef="id673e3463a6a4658845c896e2aa99167_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo4YmE3MjBiZjViNTM0Y2EzYjk1NmJiMWJiNjU2ODUwMy90YWJsZXJhbmdlOjhiYTcyMGJmNWI1MzRjYTNiOTU2YmIxYmI2NTY4NTAzXzEtMi0xLTEtOTU2NDI_83bad646-9305-4cda-80cd-183138bd6418"
      unitRef="usd">50310000</gwre:ResearchAndDevelopmentCreditsCarryforwards>
    <gwre:ResearchAndDevelopmentCreditsCarryforwards
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTo4YmE3MjBiZjViNTM0Y2EzYjk1NmJiMWJiNjU2ODUwMy90YWJsZXJhbmdlOjhiYTcyMGJmNWI1MzRjYTNiOTU2YmIxYmI2NTY4NTAzXzItMi0xLTEtOTU2NDI_52156c2c-7857-4aca-b9b0-23075c529805"
      unitRef="usd">110366000</gwre:ResearchAndDevelopmentCreditsCarryforwards>
    <us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzMzNDc_e0f89013-54f0-4082-82ec-16cb44cd7569"
      unitRef="usd">700000</us-gaap:DeferredTaxLiabilitiesUndistributedForeignEarnings>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzUxMDg_2db7c38e-9abd-44a5-ac60-092ec6d7a4bc">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Activity related to unrecognized tax benefits is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.788%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.792%"/&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="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;Fiscal 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits - beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,633&#160;&lt;/span&gt;&lt;/td&gt;&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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross increases - prior period tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,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 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross decreases - prior period tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,769)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(147)&lt;/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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross increases - current period tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,501&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits - end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzMtMS0xLTEtOTU2NDI_175c3cce-0ae0-4c45-9316-ef446e7c079d"
      unitRef="usd">17138000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzMtMy0xLTEtOTU2NDI_a480195d-542a-4b80-ad50-2f1ac820adf4"
      unitRef="usd">23690000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i9300d1a4bf04432fbe945f1baf5953eb_I20190731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzMtNS0xLTEtOTU2NDI_1fdfc60b-e447-4fc0-b570-4504f997b783"
      unitRef="usd">11633000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzQtMS0xLTEtOTU2NDI_b8c62c20-8f7c-41b1-b329-00ef757b47f2"
      unitRef="usd">147000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzQtMy0xLTEtOTU2NDI_736f3826-5f8f-463f-9f87-7d8d39b9a80b"
      unitRef="usd">65000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzQtNS0xLTEtOTU2NDI_6d6cbc1c-fab0-4fa0-bfa0-5c006fbbb5bb"
      unitRef="usd">3401000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzUtMS0xLTEtOTU2NDI_ece0a07f-e42d-47b9-9e2b-75552ea5ae39"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzUtMy0xLTEtOTU2NDI_db403f12-be4c-4d01-a192-3d235c51568a"
      unitRef="usd">7769000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzUtNS0xLTEtOTU2NDI_abf22b91-0441-4a42-9156-b2f846f17dc9"
      unitRef="usd">147000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzYtMS0xLTEtOTU2NDI_18367abb-f9c4-4d69-bf3c-b0bc041bc092"
      unitRef="usd">1501000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzYtMy0xLTEtOTU2NDI_af1002a4-2e38-4cb0-93fc-07e0169b2f79"
      unitRef="usd">1152000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzYtNS0xLTEtOTU2NDI_ac233f9b-82c9-4349-860c-c20126f0c18e"
      unitRef="usd">8803000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzgtMS0xLTEtOTU2NDI_8e440069-1cba-46ab-a637-183f70cef55a"
      unitRef="usd">18786000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzgtMy0xLTEtOTU2NDI_d0d6ee36-1418-4bca-85c3-9fe4a463d398"
      unitRef="usd">17138000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i3f435c2c5e284eb783f1145d86002e48_I20200731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90YWJsZTpjMmY4NDYyYmQ5ZTQ0N2Y3YTAxZTU4Y2FmMDkwMDEzNC90YWJsZXJhbmdlOmMyZjg0NjJiZDllNDQ3ZjdhMDFlNThjYWYwOTAwMTM0XzgtNS0xLTEtOTU2NDI_079bb0e8-b80d-4846-b2ba-c3d253aabc7f"
      unitRef="usd">23690000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzM3NDE_9489ebc5-c988-4cc2-ad2d-504792e12cba"
      unitRef="usd">1600000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzM4MDA_b131e3a0-2896-443a-9f22-5151dbd2fcdc"
      unitRef="usd">11800000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMjcvZnJhZzo0N2Y4Mjc5ZDg4Zjc0ZTdlYjM1NWFjZTI2ZWJiOWEzMC90ZXh0cmVnaW9uOjQ3ZjgyNzlkODhmNzRlN2ViMzU1YWNlMjZlYmI5YTMwXzU0OTc1NTgyNDkwMw_217822f7-764b-4a4a-81f7-154e9cbfed54"
      unitRef="usd">800000</us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzAvZnJhZzoyY2VmY2ZmOTI0Mjk0YzY3YmQ1MDNlOGY2M2I3YjU0MS90ZXh0cmVnaW9uOjJjZWZjZmY5MjQyOTRjNjdiZDUwM2U4ZjYzYjdiNTQxXzk3Mw_24a5afbc-43c1-4e4e-8d68-eab250936d85">Defined Contribution and Other Post-Retirement PlansThe Company&#x2019;s employee savings and retirement plan in the United States is qualified under Section&#160;401(k) of the Internal Revenue Code. Employees on the Company&#x2019;s U.S. payroll are automatically enrolled when they meet eligibility requirements, unless they decline participation. Upon enrollment employees are provided with tax-deferred salary deductions and various investment options. Employees may contribute up to 60% of their eligible salary up to the statutory prescribed annual limit. The Company matches employees&#x2019; contributions up to $5,000 per participant per calendar year. Certain of the Company&#x2019;s foreign subsidiaries also have defined contribution plans in which a majority of its employees participate and the Company makes matching contributions. The Company&#x2019;s contributions to its 401(k) and foreign subsidiaries&#x2019; plans were $13.1 million, $11.8 million, and $10.7 million for the fiscal years ended July&#160;31, 2022, 2021, and 2020, respectively.</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzAvZnJhZzoyY2VmY2ZmOTI0Mjk0YzY3YmQ1MDNlOGY2M2I3YjU0MS90ZXh0cmVnaW9uOjJjZWZjZmY5MjQyOTRjNjdiZDUwM2U4ZjYzYjdiNTQxXzQ3OQ_4d608263-16c6-4b72-a5a3-4ad69d5e4fc8"
      unitRef="number">0.60</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzAvZnJhZzoyY2VmY2ZmOTI0Mjk0YzY3YmQ1MDNlOGY2M2I3YjU0MS90ZXh0cmVnaW9uOjJjZWZjZmY5MjQyOTRjNjdiZDUwM2U4ZjYzYjdiNTQxXzYwMw_1fd99e6d-6631-4591-9a51-334280400073"
      unitRef="usd">5000</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzAvZnJhZzoyY2VmY2ZmOTI0Mjk0YzY3YmQ1MDNlOGY2M2I3YjU0MS90ZXh0cmVnaW9uOjJjZWZjZmY5MjQyOTRjNjdiZDUwM2U4ZjYzYjdiNTQxXzU0OTc1NTgxNDg3OQ_83e47ef1-f2fd-4c68-9359-5fcd6be0381d"
      unitRef="usd">13100000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="ie76a6914499b4bdaa291b669706b74e4_D20200801-20210731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzAvZnJhZzoyY2VmY2ZmOTI0Mjk0YzY3YmQ1MDNlOGY2M2I3YjU0MS90ZXh0cmVnaW9uOjJjZWZjZmY5MjQyOTRjNjdiZDUwM2U4ZjYzYjdiNTQxXzU0OTc1NTgxNDg3Mw_ff1669a7-1164-4c07-a153-155e8a93343f"
      unitRef="usd">11800000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="i0835d95be0a84fed97efcf94d088334b_D20190801-20200731"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzAvZnJhZzoyY2VmY2ZmOTI0Mjk0YzY3YmQ1MDNlOGY2M2I3YjU0MS90ZXh0cmVnaW9uOjJjZWZjZmY5MjQyOTRjNjdiZDUwM2U4ZjYzYjdiNTQxXzU0OTc1NTgxNDg2Nw_46fbf602-c342-4434-81f7-d0a48595a009"
      unitRef="usd">10700000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90ZXh0cmVnaW9uOjc0MWMxYjNhYzQ2NjQ1NTc4ZTdiN2ZlMjdlMzk5NDE0XzgyNA_76b69d19-6128-4ba8-a89b-d512579ced0d">Segment Information&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company operates in one segment. The Company&#x2019;s chief operating decision maker (the &#x201c;CODM&#x201d;), its Chief Executive Officer, manages the Company&#x2019;s operations on a consolidated basis for purposes of allocating resources. When evaluating the Company&#x2019;s financial performance, the CODM reviews separate revenue information for the Company&#x2019;s subscription, support, term license, perpetual license, and services offerings, as well as revenue by geographic region, while all other financial information is reviewed on a consolidated basis. The Company&#x2019;s principal operations and decision-making functions are located in the United States.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s long-lived assets for this disclosure are defined as property and equipment and operating lease assets. The Company&#x2019;s long-lived assets by geographic region are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size: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="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;133,939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143,736&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,601&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;171,027&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;177,508&#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:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90ZXh0cmVnaW9uOjc0MWMxYjNhYzQ2NjQ1NTc4ZTdiN2ZlMjdlMzk5NDE0XzUz_e320f086-4b81-475b-b279-06c2edbac918"
      unitRef="segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90ZXh0cmVnaW9uOjc0MWMxYjNhYzQ2NjQ1NTc4ZTdiN2ZlMjdlMzk5NDE0XzgzNQ_14bb98f9-3632-4257-9475-0588aa4b77c0">&lt;div style="margin-top:9pt;text-align:justify;text-indent:24.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s long-lived assets for this disclosure are defined as property and equipment and operating lease assets. The Company&#x2019;s long-lived assets by geographic region are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&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, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size: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="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;133,939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143,736&#160;&lt;/span&gt;&lt;/td&gt;&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:10pt;font-weight:400;line-height:100%"&gt;EMEA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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:10pt;font-weight:400;line-height:100%"&gt;APAC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,601&#160;&lt;/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:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;171,027&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;177,508&#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:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="i8a6936dc1c4c4d80bf7be1a605ac4505_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzEtMS0xLTEtOTU2NDI_045b3769-164e-4b2d-881d-e06a4e5fd789"
      unitRef="usd">133939000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="idcec4b04c7c74db1a6b982596ac7d007_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzEtMy0xLTEtOTU2NDI_69d21c2d-11f7-45ce-906a-a56438e4a912"
      unitRef="usd">143736000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="ia6ba9a31456b4a8bbe367ddf96fe327d_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzItMS0xLTEtOTU2NDI_e353690f-3fdc-4e0d-bd19-6238193cc27a"
      unitRef="usd">31230000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="i683bb4e7018e4b1a9b0b00f96f373feb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzItMy0xLTEtOTU2NDI_1dec1802-af4d-4d90-8bc1-fe69b10840a8"
      unitRef="usd">32171000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="i36688a960e964864b83ee19439f5856b_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzMtMS0xLTEtOTU2NDI_34a42c4d-eb13-4019-86c9-e049c609a1bf"
      unitRef="usd">5858000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="i73fb14a7f1004ab0b9c659e1112c2ce5_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzMtMy0xLTEtOTU2NDI_319699e7-f286-4c16-89f3-adde01dacdcb"
      unitRef="usd">1601000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="i199383bee8bd45a19f5f7d5465bda067_I20220731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzQtMS0xLTEtOTU2NDI_757bbd54-c5b3-4a1b-8b19-79f861ad6c54"
      unitRef="usd">171027000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets
      contextRef="i5699e04baa4347908c7e2d08e9ccdecb_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xMzMvZnJhZzo3NDFjMWIzYWM0NjY0NTU3OGU3YjdmZTI3ZTM5OTQxNC90YWJsZTo0NzU3YWY2MDIyODc0YWJmODM1ZDljNDM4ZDI0ZjI0NC90YWJsZXJhbmdlOjQ3NTdhZjYwMjI4NzRhYmY4MzVkOWM0MzhkMjRmMjQ0XzQtMy0xLTEtOTU2NDI_8e3f5903-54c4-4d76-a637-7d436ae845b4"
      unitRef="usd">177508000</gwre:LonglivedAssetsIncludingGoodwillandIntangibleAssets>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="ib5c87c05e31344bf886f615aeea1f773_D20210801-20220731"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xNjc5L2ZyYWc6YzZiNzgwODIxZDAzNGJjMTk5NDIyMTJlYjA3YTM3MTUvdGV4dHJlZ2lvbjpjNmI3ODA4MjFkMDM0YmMxOTk0MjIxMmViMDdhMzcxNV8xMDk5NTExNjI3OTU0Mg_88888fdd-1eb3-4aba-b1fe-d1211f5f0141">Subsequent EventsIn September 2022, the Company's board of directors authorized and approved a share repurchase program of up to $400.0&#160;million of the Company&#x2019;s outstanding shares of common stock. Share repurchases under the program may be made from time to time, in the open market, in privately negotiated transactions and otherwise, at the discretion of management of the Company and in accordance with applicable federal securities laws, including Rule 10b-18 of the Exchange Act, and other applicable legal requirements. Such repurchases may also be made in compliance with Rule 10b5-1 trading plans entered into by the Company.</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i468450806ef647a4843e7cf7cc3bfd6d_I20220926"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjdhMzM1MDlmMGFlNDRmN2U4ZTFhYTJiYzk3MGI4YTkxL3NlYzo3YTMzNTA5ZjBhZTQ0ZjdlOGUxYWEyYmM5NzBiOGE5MV8xNjc5L2ZyYWc6YzZiNzgwODIxZDAzNGJjMTk5NDIyMTJlYjA3YTM3MTUvdGV4dHJlZ2lvbjpjNmI3ODA4MjFkMDM0YmMxOTk0MjIxMmViMDdhMzcxNV8xMDk5NTExNjI3OTU0NA_93303357-abe1-4ed0-b81a-9d8d0a6649a9"
      unitRef="usd">400000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
</xbrl>
