<?xml version='1.0' encoding='windows-1252'?>
<informationTable xmlns="http://www.sec.gov/edgar/document/thirteenf/informationtable" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <infoTable>
    <nameOfIssuer>Aaon Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>000360206</cusip>
    <value>101904669</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1231476</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1191373</Sole>
      <Shared>0</Shared>
      <None>40103</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Aaon Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>000360206</cusip>
    <value>37446196</value>
    <shrsOrPrnAmt>
      <sshPrnamt>452522</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>452522</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Aaon Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>000360206</cusip>
    <value>3114131</value>
    <shrsOrPrnAmt>
      <sshPrnamt>37633</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>37633</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Advanced Drainage System Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00790R104</cusip>
    <value>25579283</value>
    <shrsOrPrnAmt>
      <sshPrnamt>186533</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>158525</Sole>
      <Shared>0</Shared>
      <None>28008</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Advanced Drainage System Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00790R104</cusip>
    <value>6403971</value>
    <shrsOrPrnAmt>
      <sshPrnamt>46700</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>46700</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Advanced Drainage System Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00790R104</cusip>
    <value>3111480</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22690</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>22690</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Agilysys Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00847J105</cusip>
    <value>33471284</value>
    <shrsOrPrnAmt>
      <sshPrnamt>470499</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>453242</Sole>
      <Shared>0</Shared>
      <None>17257</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Agilysys Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00847J105</cusip>
    <value>14368217</value>
    <shrsOrPrnAmt>
      <sshPrnamt>201971</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>201971</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Alarm.com Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>011642105</cusip>
    <value>32481078</value>
    <shrsOrPrnAmt>
      <sshPrnamt>752051</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>724888</Sole>
      <Shared>0</Shared>
      <None>27163</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Alarm.com Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>011642105</cusip>
    <value>13735802</value>
    <shrsOrPrnAmt>
      <sshPrnamt>318032</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>318032</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Align Technology Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>016255101</cusip>
    <value>3232096</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18854</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>13396</Sole>
      <Shared>0</Shared>
      <None>5458</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Align Technology Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>016255101</cusip>
    <value>1560870</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9105</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>9105</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Alphabet Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>02079K305</cusip>
    <value>2616804</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9100</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>7802</Sole>
      <Shared>0</Shared>
      <None>1298</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Amphenol Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>032095101</cusip>
    <value>26120407</value>
    <shrsOrPrnAmt>
      <sshPrnamt>206731</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>150059</Sole>
      <Shared>0</Shared>
      <None>56672</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Amphenol Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>032095101</cusip>
    <value>11540809</value>
    <shrsOrPrnAmt>
      <sshPrnamt>91340</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>91340</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>API Group Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00187Y100</cusip>
    <value>2782063</value>
    <shrsOrPrnAmt>
      <sshPrnamt>68659</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>68659</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>API Group Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>00187Y100</cusip>
    <value>5750229</value>
    <shrsOrPrnAmt>
      <sshPrnamt>141911</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>100653</Sole>
      <Shared>0</Shared>
      <None>41258</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Axon Enterprise Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>05464C101</cusip>
    <value>29167815</value>
    <shrsOrPrnAmt>
      <sshPrnamt>68680</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>57769</Sole>
      <Shared>0</Shared>
      <None>10911</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Axon Enterprise Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>05464C101</cusip>
    <value>9072652</value>
    <shrsOrPrnAmt>
      <sshPrnamt>21363</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>21363</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Axon Enterprise Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>05464C101</cusip>
    <value>2839053</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6685</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>6685</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Axos Financial Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>05465C100</cusip>
    <value>36429632</value>
    <shrsOrPrnAmt>
      <sshPrnamt>428131</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>412760</Sole>
      <Shared>0</Shared>
      <None>15371</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Axos Financial Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>05465C100</cusip>
    <value>15311946</value>
    <shrsOrPrnAmt>
      <sshPrnamt>179950</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>179950</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Balchem Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>057665200</cusip>
    <value>102671590</value>
    <shrsOrPrnAmt>
      <sshPrnamt>605804</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>587060</Sole>
      <Shared>0</Shared>
      <None>18744</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Balchem Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>057665200</cusip>
    <value>37193403</value>
    <shrsOrPrnAmt>
      <sshPrnamt>219456</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>219456</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Balchem Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>057665200</cusip>
    <value>3598908</value>
    <shrsOrPrnAmt>
      <sshPrnamt>21235</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>21235</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bentley Systems Incorporated</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>08265T208</cusip>
    <value>8629384</value>
    <shrsOrPrnAmt>
      <sshPrnamt>245711</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>213247</Sole>
      <Shared>0</Shared>
      <None>32464</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bentley Systems Incorporated</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>08265T208</cusip>
    <value>1903680</value>
    <shrsOrPrnAmt>
      <sshPrnamt>54205</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>54205</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bentley Systems Incorporated</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>08265T208</cusip>
    <value>1176941</value>
    <shrsOrPrnAmt>
      <sshPrnamt>33512</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>33512</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bio-Techne Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09073M104</cusip>
    <value>46773768</value>
    <shrsOrPrnAmt>
      <sshPrnamt>895020</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>866060</Sole>
      <Shared>0</Shared>
      <None>28960</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bio-Techne Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09073M104</cusip>
    <value>2036572</value>
    <shrsOrPrnAmt>
      <sshPrnamt>38970</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>38970</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bio-Techne Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09073M104</cusip>
    <value>16151110</value>
    <shrsOrPrnAmt>
      <sshPrnamt>309053</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>309053</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Biolife Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09062W204</cusip>
    <value>4149347</value>
    <shrsOrPrnAmt>
      <sshPrnamt>217471</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>217471</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Biolife Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09062W204</cusip>
    <value>9966093</value>
    <shrsOrPrnAmt>
      <sshPrnamt>522332</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>503759</Sole>
      <Shared>0</Shared>
      <None>18573</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Blackbaud Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09227Q100</cusip>
    <value>19119760</value>
    <shrsOrPrnAmt>
      <sshPrnamt>495202</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>476076</Sole>
      <Shared>0</Shared>
      <None>19126</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Blackbaud Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09227Q100</cusip>
    <value>8644702</value>
    <shrsOrPrnAmt>
      <sshPrnamt>223898</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>223898</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Blackline Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09239B109</cusip>
    <value>12194578</value>
    <shrsOrPrnAmt>
      <sshPrnamt>329583</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>307999</Sole>
      <Shared>0</Shared>
      <None>21584</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Blackline Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>09239B109</cusip>
    <value>5494611</value>
    <shrsOrPrnAmt>
      <sshPrnamt>148503</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>148503</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bright Horizons Family Solutions Inc Del</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>109194100</cusip>
    <value>45303787</value>
    <shrsOrPrnAmt>
      <sshPrnamt>551611</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>531039</Sole>
      <Shared>0</Shared>
      <None>20572</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Bright Horizons Family Solutions Inc Del</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>109194100</cusip>
    <value>19778218</value>
    <shrsOrPrnAmt>
      <sshPrnamt>240816</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>240816</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Broadridge Financial Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>11133T103</cusip>
    <value>9535512</value>
    <shrsOrPrnAmt>
      <sshPrnamt>58687</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>41635</Sole>
      <Shared>0</Shared>
      <None>17052</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Broadridge Financial Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>11133T103</cusip>
    <value>4616707</value>
    <shrsOrPrnAmt>
      <sshPrnamt>28414</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>28414</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Burlington Stores Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>122017106</cusip>
    <value>31508353</value>
    <shrsOrPrnAmt>
      <sshPrnamt>96836</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>82251</Sole>
      <Shared>0</Shared>
      <None>14585</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Burlington Stores Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>122017106</cusip>
    <value>7910313</value>
    <shrsOrPrnAmt>
      <sshPrnamt>24311</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>24311</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Burlington Stores Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>122017106</cusip>
    <value>3812803</value>
    <shrsOrPrnAmt>
      <sshPrnamt>11718</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>11718</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Cadence Design Systems, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>127387108</cusip>
    <value>16726123</value>
    <shrsOrPrnAmt>
      <sshPrnamt>60194</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>42728</Sole>
      <Shared>0</Shared>
      <None>17466</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Cadence Design Systems, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>127387108</cusip>
    <value>8118528</value>
    <shrsOrPrnAmt>
      <sshPrnamt>29217</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>29217</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Casella Waste Systems, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>147448104</cusip>
    <value>27399752</value>
    <shrsOrPrnAmt>
      <sshPrnamt>345346</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>345346</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Casella Waste Systems, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>147448104</cusip>
    <value>64879611</value>
    <shrsOrPrnAmt>
      <sshPrnamt>817741</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>788239</Sole>
      <Shared>0</Shared>
      <None>29502</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CBIZ Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>124805102</cusip>
    <value>6517793</value>
    <shrsOrPrnAmt>
      <sshPrnamt>242748</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>233319</Sole>
      <Shared>0</Shared>
      <None>9429</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CBIZ Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>124805102</cusip>
    <value>2963972</value>
    <shrsOrPrnAmt>
      <sshPrnamt>110390</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>110390</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Certara Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>15687V109</cusip>
    <value>10820115</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1898266</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1826066</Sole>
      <Shared>0</Shared>
      <None>72200</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Certara Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>15687V109</cusip>
    <value>4817743</value>
    <shrsOrPrnAmt>
      <sshPrnamt>845218</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>845218</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Charles River Laboratories International, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>159864107</cusip>
    <value>1403734</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8138</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>5859</Sole>
      <Shared>0</Shared>
      <None>2279</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Charles River Laboratories International, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>159864107</cusip>
    <value>656190</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3804</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>3804</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Church &amp; Dwight Co Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>171340102</cusip>
    <value>20857996</value>
    <shrsOrPrnAmt>
      <sshPrnamt>223510</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>189630</Sole>
      <Shared>0</Shared>
      <None>33880</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Church &amp; Dwight Co Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>171340102</cusip>
    <value>5077821</value>
    <shrsOrPrnAmt>
      <sshPrnamt>54413</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>54413</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Church &amp; Dwight Co Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>171340102</cusip>
    <value>2601855</value>
    <shrsOrPrnAmt>
      <sshPrnamt>27881</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>27881</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Cognex Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>192422103</cusip>
    <value>2041621</value>
    <shrsOrPrnAmt>
      <sshPrnamt>41674</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>29685</Sole>
      <Shared>0</Shared>
      <None>11989</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Cognex Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>192422103</cusip>
    <value>978624</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19976</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>19976</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Construction Partners Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>21044C107</cusip>
    <value>2272293</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20449</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>20449</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Construction Partners Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>21044C107</cusip>
    <value>123417586</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1110669</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1073951</Sole>
      <Shared>0</Shared>
      <None>36718</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Construction Partners Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>21044C107</cusip>
    <value>47774155</value>
    <shrsOrPrnAmt>
      <sshPrnamt>429933</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>429933</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Copart Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>217204106</cusip>
    <value>1786027</value>
    <shrsOrPrnAmt>
      <sshPrnamt>53796</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>53796</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Copart Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>217204106</cusip>
    <value>18954592</value>
    <shrsOrPrnAmt>
      <sshPrnamt>570921</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>470702</Sole>
      <Shared>0</Shared>
      <None>100219</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Copart Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>217204106</cusip>
    <value>5363858</value>
    <shrsOrPrnAmt>
      <sshPrnamt>161562</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>161562</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Costar Group Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>22160N109</cusip>
    <value>12998727</value>
    <shrsOrPrnAmt>
      <sshPrnamt>322229</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>273823</Sole>
      <Shared>0</Shared>
      <None>48406</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Costar Group Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>22160N109</cusip>
    <value>1538729</value>
    <shrsOrPrnAmt>
      <sshPrnamt>38144</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>38144</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Costar Group Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>22160N109</cusip>
    <value>3109770</value>
    <shrsOrPrnAmt>
      <sshPrnamt>77089</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>77089</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Costco Wholesale Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>22160K105</cusip>
    <value>2224032</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2232</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1915</Sole>
      <Shared>0</Shared>
      <None>317</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CSW Industrials Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>126402106</cusip>
    <value>12272322</value>
    <shrsOrPrnAmt>
      <sshPrnamt>47096</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>45402</Sole>
      <Shared>0</Shared>
      <None>1694</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CSW Industrials Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>126402106</cusip>
    <value>5171731</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19847</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>19847</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Danaher Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>235851102</cusip>
    <value>672511</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3547</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3044</Sole>
      <Shared>0</Shared>
      <None>503</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Datadog Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>23804L103</cusip>
    <value>9856830</value>
    <shrsOrPrnAmt>
      <sshPrnamt>83497</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>59258</Sole>
      <Shared>0</Shared>
      <None>24239</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Datadog Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>23804L103</cusip>
    <value>4762137</value>
    <shrsOrPrnAmt>
      <sshPrnamt>40340</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>40340</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Descartes Systems Group Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>249906108</cusip>
    <value>67587883</value>
    <shrsOrPrnAmt>
      <sshPrnamt>944493</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>914061</Sole>
      <Shared>0</Shared>
      <None>30432</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Descartes Systems Group Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>249906108</cusip>
    <value>25497472</value>
    <shrsOrPrnAmt>
      <sshPrnamt>356309</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>356309</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Descartes Systems Group Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>249906108</cusip>
    <value>1947291</value>
    <shrsOrPrnAmt>
      <sshPrnamt>27212</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>27212</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>DexCom Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>252131107</cusip>
    <value>5847435</value>
    <shrsOrPrnAmt>
      <sshPrnamt>93112</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>65717</Sole>
      <Shared>0</Shared>
      <None>27395</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>DexCom Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>252131107</cusip>
    <value>2873163</value>
    <shrsOrPrnAmt>
      <sshPrnamt>45751</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>45751</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Digi International Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>253798102</cusip>
    <value>22977759</value>
    <shrsOrPrnAmt>
      <sshPrnamt>476717</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>476717</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Digi International Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>253798102</cusip>
    <value>54738248</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1135648</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1094914</Sole>
      <Shared>0</Shared>
      <None>40734</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Donaldson Co Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>257651109</cusip>
    <value>36108761</value>
    <shrsOrPrnAmt>
      <sshPrnamt>425460</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>410177</Sole>
      <Shared>0</Shared>
      <None>15283</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Donaldson Co Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>257651109</cusip>
    <value>15184177</value>
    <shrsOrPrnAmt>
      <sshPrnamt>178911</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>178911</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Dorman Products Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>258278100</cusip>
    <value>41270604</value>
    <shrsOrPrnAmt>
      <sshPrnamt>395464</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>381031</Sole>
      <Shared>0</Shared>
      <None>14433</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Dorman Products Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>258278100</cusip>
    <value>17625569</value>
    <shrsOrPrnAmt>
      <sshPrnamt>168892</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>168892</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ecolab Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>278865100</cusip>
    <value>1478273</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5557</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4770</Sole>
      <Shared>0</Shared>
      <None>787</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Edwards Lifesciences Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>28176E108</cusip>
    <value>1701139</value>
    <shrsOrPrnAmt>
      <sshPrnamt>21243</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>18233</Sole>
      <Shared>0</Shared>
      <None>3010</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>EPAM Systems Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>29414B104</cusip>
    <value>9682598</value>
    <shrsOrPrnAmt>
      <sshPrnamt>71511</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>60370</Sole>
      <Shared>0</Shared>
      <None>11141</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>EPAM Systems Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>29414B104</cusip>
    <value>2515326</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18577</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>18577</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>EPAM Systems Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>29414B104</cusip>
    <value>1144672</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8454</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>8454</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Eplus Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>294268107</cusip>
    <value>40234189</value>
    <shrsOrPrnAmt>
      <sshPrnamt>534674</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>515462</Sole>
      <Shared>0</Shared>
      <None>19212</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Eplus Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>294268107</cusip>
    <value>16919436</value>
    <shrsOrPrnAmt>
      <sshPrnamt>224843</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>224843</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ESCO Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>296315104</cusip>
    <value>124288454</value>
    <shrsOrPrnAmt>
      <sshPrnamt>441726</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>425945</Sole>
      <Shared>0</Shared>
      <None>15781</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ESCO Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>296315104</cusip>
    <value>51988735</value>
    <shrsOrPrnAmt>
      <sshPrnamt>184770</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>184770</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ExlService Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>302081104</cusip>
    <value>3222249</value>
    <shrsOrPrnAmt>
      <sshPrnamt>105821</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>105821</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ExlService Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>302081104</cusip>
    <value>92522009</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3038490</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2943408</Sole>
      <Shared>0</Shared>
      <None>95082</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ExlService Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>302081104</cusip>
    <value>33884151</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1112780</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>1112780</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Exponent Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>30214U102</cusip>
    <value>83833458</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1284804</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1245355</Sole>
      <Shared>0</Shared>
      <None>39449</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Exponent Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>30214U102</cusip>
    <value>3191965</value>
    <shrsOrPrnAmt>
      <sshPrnamt>48919</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>48919</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Exponent Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>30214U102</cusip>
    <value>30131406</value>
    <shrsOrPrnAmt>
      <sshPrnamt>461784</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>461784</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Fair Isaac Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>303250104</cusip>
    <value>6856630</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6423</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>6355</Sole>
      <Shared>0</Shared>
      <None>68</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Fair Isaac Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>303250104</cusip>
    <value>1594905</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1494</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>1494</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FirstService Corp.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>33767E202</cusip>
    <value>51148165</value>
    <shrsOrPrnAmt>
      <sshPrnamt>368131</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>354505</Sole>
      <Shared>0</Shared>
      <None>13626</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FirstService Corp.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>33767E202</cusip>
    <value>22152733</value>
    <shrsOrPrnAmt>
      <sshPrnamt>159441</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>159441</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Fortune Brands Innovations Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>34964C106</cusip>
    <value>1574323</value>
    <shrsOrPrnAmt>
      <sshPrnamt>40398</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>28852</Sole>
      <Shared>0</Shared>
      <None>11546</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Fortune Brands Innovations Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>34964C106</cusip>
    <value>750406</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19256</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>19256</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Freshpet Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>358039105</cusip>
    <value>1309737</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22214</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>22214</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Freshpet Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>358039105</cusip>
    <value>2708155</value>
    <shrsOrPrnAmt>
      <sshPrnamt>45932</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>32620</Sole>
      <Shared>0</Shared>
      <None>13312</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Gartner Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>366651107</cusip>
    <value>1479846</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9346</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>9346</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Gartner Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>366651107</cusip>
    <value>3089957</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19515</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>13930</Sole>
      <Shared>0</Shared>
      <None>5585</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Generac Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>368736104</cusip>
    <value>2520477</value>
    <shrsOrPrnAmt>
      <sshPrnamt>12904</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>9185</Sole>
      <Shared>0</Shared>
      <None>3719</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Generac Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>368736104</cusip>
    <value>1212023</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6205</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>6205</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Globus Med Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>379577208</cusip>
    <value>107732028</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1250372</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1209582</Sole>
      <Shared>0</Shared>
      <None>40790</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Globus Med Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>379577208</cusip>
    <value>2846037</value>
    <shrsOrPrnAmt>
      <sshPrnamt>33032</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>33032</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Globus Med Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>379577208</cusip>
    <value>41147173</value>
    <shrsOrPrnAmt>
      <sshPrnamt>477567</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>477567</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Hamilton Lane Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>407497106</cusip>
    <value>18849668</value>
    <shrsOrPrnAmt>
      <sshPrnamt>189634</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>182369</Sole>
      <Shared>0</Shared>
      <None>7265</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Hamilton Lane Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>407497106</cusip>
    <value>8454964</value>
    <shrsOrPrnAmt>
      <sshPrnamt>85060</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>85060</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Healthequity Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>42226A107</cusip>
    <value>27023613</value>
    <shrsOrPrnAmt>
      <sshPrnamt>323365</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>323365</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Healthequity Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>42226A107</cusip>
    <value>69187335</value>
    <shrsOrPrnAmt>
      <sshPrnamt>827897</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>771799</Sole>
      <Shared>0</Shared>
      <None>56098</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Healthequity Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>42226A107</cusip>
    <value>1906065</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22808</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>22808</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Heico Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>422806208</cusip>
    <value>9860014</value>
    <shrsOrPrnAmt>
      <sshPrnamt>46710</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>46710</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Heico Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>422806208</cusip>
    <value>21531498</value>
    <shrsOrPrnAmt>
      <sshPrnamt>102002</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>73264</Sole>
      <Shared>0</Shared>
      <None>28738</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Hubspot Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>443573100</cusip>
    <value>1500483</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6147</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>6147</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Hubspot Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>443573100</cusip>
    <value>902194</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3696</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>3696</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Hubspot Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>443573100</cusip>
    <value>6649970</value>
    <shrsOrPrnAmt>
      <sshPrnamt>27243</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>23559</Sole>
      <Shared>0</Shared>
      <None>3684</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>I3 Verticals INC</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>46571Y107</cusip>
    <value>10276880</value>
    <shrsOrPrnAmt>
      <sshPrnamt>459610</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>459610</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>I3 Verticals INC</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>46571Y107</cusip>
    <value>24513132</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1096294</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1057039</Sole>
      <Shared>0</Shared>
      <None>39255</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Idex Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>45167R104</cusip>
    <value>11997481</value>
    <shrsOrPrnAmt>
      <sshPrnamt>63295</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>44928</Sole>
      <Shared>0</Shared>
      <None>18367</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Idex Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>45167R104</cusip>
    <value>5804400</value>
    <shrsOrPrnAmt>
      <sshPrnamt>30622</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>30622</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>IDEXX Laboratories Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>45168D104</cusip>
    <value>16301916</value>
    <shrsOrPrnAmt>
      <sshPrnamt>29013</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>20636</Sole>
      <Shared>0</Shared>
      <None>8377</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>IDEXX Laboratories Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>45168D104</cusip>
    <value>7863651</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13995</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>13995</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Intercontinental Exchange Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>45866F104</cusip>
    <value>13723325</value>
    <shrsOrPrnAmt>
      <sshPrnamt>87254</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>61994</Sole>
      <Shared>0</Shared>
      <None>25260</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Intercontinental Exchange Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>45866F104</cusip>
    <value>6619443</value>
    <shrsOrPrnAmt>
      <sshPrnamt>42087</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>42087</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Intuit Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>461202103</cusip>
    <value>8458459</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19563</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>14363</Sole>
      <Shared>0</Shared>
      <None>5200</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Intuit Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>461202103</cusip>
    <value>3409749</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7886</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>7886</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Intuitive Surgical Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>46120E602</cusip>
    <value>1518501</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3294</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2833</Sole>
      <Shared>0</Shared>
      <None>461</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>ETF</titleOfClass>
    <cusip>464287648</cusip>
    <value>22179056</value>
    <shrsOrPrnAmt>
      <sshPrnamt>70677</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>70677</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>ETF</titleOfClass>
    <cusip>464287481</cusip>
    <value>2992760</value>
    <shrsOrPrnAmt>
      <sshPrnamt>23359</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>23359</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>J&amp;J Snack Foods Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>466032109</cusip>
    <value>22973285</value>
    <shrsOrPrnAmt>
      <sshPrnamt>289811</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>278989</Sole>
      <Shared>0</Shared>
      <None>10822</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>J&amp;J Snack Foods Corp</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>466032109</cusip>
    <value>10039228</value>
    <shrsOrPrnAmt>
      <sshPrnamt>126646</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>126646</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Keysight Technologies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>49338L103</cusip>
    <value>5807504</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20567</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>20567</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Keysight Technologies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>49338L103</cusip>
    <value>12373453</value>
    <shrsOrPrnAmt>
      <sshPrnamt>43820</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>43820</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Keysight Technologies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>49338L103</cusip>
    <value>51240141</value>
    <shrsOrPrnAmt>
      <sshPrnamt>181465</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>154154</Sole>
      <Shared>0</Shared>
      <None>27311</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Kinsale Capital Group Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>49714P108</cusip>
    <value>70210719</value>
    <shrsOrPrnAmt>
      <sshPrnamt>205499</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>199010</Sole>
      <Shared>0</Shared>
      <None>6489</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Kinsale Capital Group Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>49714P108</cusip>
    <value>25961718</value>
    <shrsOrPrnAmt>
      <sshPrnamt>75987</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>75987</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Kinsale Capital Group Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>49714P108</cusip>
    <value>2203365</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6449</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>6449</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lemaitre Vascular Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>525558201</cusip>
    <value>58025118</value>
    <shrsOrPrnAmt>
      <sshPrnamt>531512</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>512510</Sole>
      <Shared>0</Shared>
      <None>19002</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lemaitre Vascular Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>525558201</cusip>
    <value>24288142</value>
    <shrsOrPrnAmt>
      <sshPrnamt>222480</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>222480</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Limbach Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>53263P105</cusip>
    <value>12990227</value>
    <shrsOrPrnAmt>
      <sshPrnamt>166435</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>160482</Sole>
      <Shared>0</Shared>
      <None>5953</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Limbach Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>53263P105</cusip>
    <value>5436573</value>
    <shrsOrPrnAmt>
      <sshPrnamt>69655</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>69655</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Loar Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>53947R105</cusip>
    <value>26670467</value>
    <shrsOrPrnAmt>
      <sshPrnamt>465534</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>448731</Sole>
      <Shared>0</Shared>
      <None>16803</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Loar Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>53947R105</cusip>
    <value>11262297</value>
    <shrsOrPrnAmt>
      <sshPrnamt>196584</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>196584</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lowes Companies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>548661107</cusip>
    <value>1515500</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6414</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>5493</Sole>
      <Shared>0</Shared>
      <None>921</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MACOM Technology Solutions Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>55405Y100</cusip>
    <value>53713222</value>
    <shrsOrPrnAmt>
      <sshPrnamt>241875</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>233169</Sole>
      <Shared>0</Shared>
      <None>8706</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MACOM Technology Solutions Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>55405Y100</cusip>
    <value>22625380</value>
    <shrsOrPrnAmt>
      <sshPrnamt>101884</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>101884</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MarketAxess Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>57060D108</cusip>
    <value>3627596</value>
    <shrsOrPrnAmt>
      <sshPrnamt>21988</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>21988</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MarketAxess Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>57060D108</cusip>
    <value>914814</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5545</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>5545</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Marvell Technology Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>573874104</cusip>
    <value>2594516</value>
    <shrsOrPrnAmt>
      <sshPrnamt>26194</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>22523</Sole>
      <Shared>0</Shared>
      <None>3671</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Microsoft Corp.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>594918104</cusip>
    <value>1947835</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5262</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4513</Sole>
      <Shared>0</Shared>
      <None>749</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Monolithic Power Systems Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>609839105</cusip>
    <value>31745520</value>
    <shrsOrPrnAmt>
      <sshPrnamt>29035</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>24776</Sole>
      <Shared>0</Shared>
      <None>4259</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Monolithic Power Systems Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>609839105</cusip>
    <value>7760598</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7098</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>7098</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Monolithic Power Systems Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>609839105</cusip>
    <value>3955740</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3618</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>3618</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Motorola Solutions Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>620076307</cusip>
    <value>1593538</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3672</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3158</Sole>
      <Shared>0</Shared>
      <None>514</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Novanta Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>67000B104</cusip>
    <value>78188599</value>
    <shrsOrPrnAmt>
      <sshPrnamt>661998</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>640348</Sole>
      <Shared>0</Shared>
      <None>21650</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Novanta Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>67000B104</cusip>
    <value>29927420</value>
    <shrsOrPrnAmt>
      <sshPrnamt>253386</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>253386</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Novanta Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>67000B104</cusip>
    <value>1876295</value>
    <shrsOrPrnAmt>
      <sshPrnamt>15886</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>15886</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>O'Reilly Automotive Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>67103H107</cusip>
    <value>26259927</value>
    <shrsOrPrnAmt>
      <sshPrnamt>284475</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>205426</Sole>
      <Shared>0</Shared>
      <None>79049</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>O'Reilly Automotive Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>67103H107</cusip>
    <value>11827126</value>
    <shrsOrPrnAmt>
      <sshPrnamt>128124</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>128124</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Old Dominion Freight Line Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>679580100</cusip>
    <value>10347444</value>
    <shrsOrPrnAmt>
      <sshPrnamt>52955</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>37565</Sole>
      <Shared>0</Shared>
      <None>15390</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Old Dominion Freight Line Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>679580100</cusip>
    <value>5020412</value>
    <shrsOrPrnAmt>
      <sshPrnamt>25693</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>25693</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ollies Bargain Outlet Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>681116109</cusip>
    <value>63519479</value>
    <shrsOrPrnAmt>
      <sshPrnamt>690129</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>668721</Sole>
      <Shared>0</Shared>
      <None>21408</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ollies Bargain Outlet Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>681116109</cusip>
    <value>2168002</value>
    <shrsOrPrnAmt>
      <sshPrnamt>23555</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>23555</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ollies Bargain Outlet Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>681116109</cusip>
    <value>23069366</value>
    <shrsOrPrnAmt>
      <sshPrnamt>250645</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>250645</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Onto Innovation Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>683344105</cusip>
    <value>39189492</value>
    <shrsOrPrnAmt>
      <sshPrnamt>191103</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>191103</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Onto Innovation Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>683344105</cusip>
    <value>103086515</value>
    <shrsOrPrnAmt>
      <sshPrnamt>502689</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>486362</Sole>
      <Shared>0</Shared>
      <None>16327</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Onto Innovation Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>683344105</cusip>
    <value>2491806</value>
    <shrsOrPrnAmt>
      <sshPrnamt>12151</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>12151</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Option Care Health Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>68404L201</cusip>
    <value>27832202</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1033886</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>996281</Sole>
      <Shared>0</Shared>
      <None>37605</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Option Care Health Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>68404L201</cusip>
    <value>11851126</value>
    <shrsOrPrnAmt>
      <sshPrnamt>440235</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>440235</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Palomar Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>69753M105</cusip>
    <value>18107137</value>
    <shrsOrPrnAmt>
      <sshPrnamt>151524</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>146132</Sole>
      <Shared>0</Shared>
      <None>5392</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Palomar Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>69753M105</cusip>
    <value>7544513</value>
    <shrsOrPrnAmt>
      <sshPrnamt>63134</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>63134</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Pool Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>73278L105</cusip>
    <value>13988255</value>
    <shrsOrPrnAmt>
      <sshPrnamt>69136</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>58253</Sole>
      <Shared>0</Shared>
      <None>10883</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Pool Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>73278L105</cusip>
    <value>1638873</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8100</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>8100</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Pool Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>73278L105</cusip>
    <value>3669255</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18135</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>18135</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Raymond James Financial Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>754730109</cusip>
    <value>10242376</value>
    <shrsOrPrnAmt>
      <sshPrnamt>70740</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>51930</Sole>
      <Shared>0</Shared>
      <None>18810</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Raymond James Financial Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>754730109</cusip>
    <value>4114497</value>
    <shrsOrPrnAmt>
      <sshPrnamt>28417</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>28417</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>RBC Bearings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>75524B104</cusip>
    <value>6086746</value>
    <shrsOrPrnAmt>
      <sshPrnamt>11207</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>11207</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>RBC Bearings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>75524B104</cusip>
    <value>149653518</value>
    <shrsOrPrnAmt>
      <sshPrnamt>275544</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>267326</Sole>
      <Shared>0</Shared>
      <None>8218</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>RBC Bearings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>75524B104</cusip>
    <value>52255205</value>
    <shrsOrPrnAmt>
      <sshPrnamt>96213</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>96213</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Repligen Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>759916109</cusip>
    <value>2784558</value>
    <shrsOrPrnAmt>
      <sshPrnamt>23634</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>23634</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Repligen Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>759916109</cusip>
    <value>21318233</value>
    <shrsOrPrnAmt>
      <sshPrnamt>180939</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>180939</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Repligen Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>759916109</cusip>
    <value>57633442</value>
    <shrsOrPrnAmt>
      <sshPrnamt>489165</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>452459</Sole>
      <Shared>0</Shared>
      <None>36706</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Rollins Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>775711104</cusip>
    <value>34066672</value>
    <shrsOrPrnAmt>
      <sshPrnamt>637833</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>530954</Sole>
      <Shared>0</Shared>
      <None>106879</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Rollins Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>775711104</cusip>
    <value>9549708</value>
    <shrsOrPrnAmt>
      <sshPrnamt>178800</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>178800</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Rollins Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>775711104</cusip>
    <value>3623014</value>
    <shrsOrPrnAmt>
      <sshPrnamt>67834</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>67834</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Roper Technologies Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>776696106</cusip>
    <value>7144373</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20190</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>14311</Sole>
      <Shared>0</Shared>
      <None>5879</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Roper Technologies Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>776696106</cusip>
    <value>3476321</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9824</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>9824</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ryan Specialty Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78351F107</cusip>
    <value>13492742</value>
    <shrsOrPrnAmt>
      <sshPrnamt>399903</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>339011</Sole>
      <Shared>0</Shared>
      <None>60892</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ryan Specialty Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78351F107</cusip>
    <value>1673099</value>
    <shrsOrPrnAmt>
      <sshPrnamt>49588</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>49588</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ryan Specialty Holdings Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78351F107</cusip>
    <value>3329598</value>
    <shrsOrPrnAmt>
      <sshPrnamt>98684</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>98684</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>S&amp;P Global Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78409V104</cusip>
    <value>1177766</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2769</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2380</Sole>
      <Shared>0</Shared>
      <None>389</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Salesforce Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>79466L302</cusip>
    <value>747427</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4004</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3441</Sole>
      <Shared>0</Shared>
      <None>563</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Siteone Landscape Supply Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>82982L103</cusip>
    <value>58689110</value>
    <shrsOrPrnAmt>
      <sshPrnamt>440907</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>424988</Sole>
      <Shared>0</Shared>
      <None>15919</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Siteone Landscape Supply Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>82982L103</cusip>
    <value>24808642</value>
    <shrsOrPrnAmt>
      <sshPrnamt>186377</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>186377</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SPX Technologies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78473E103</cusip>
    <value>23035087</value>
    <shrsOrPrnAmt>
      <sshPrnamt>115210</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>115210</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SPX Technologies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78473E103</cusip>
    <value>54628333</value>
    <shrsOrPrnAmt>
      <sshPrnamt>273224</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>263386</Sole>
      <Shared>0</Shared>
      <None>9838</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SS&amp;C Technologies Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78467J100</cusip>
    <value>3479550</value>
    <shrsOrPrnAmt>
      <sshPrnamt>51495</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>36724</Sole>
      <Shared>0</Shared>
      <None>14771</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SS&amp;C Technologies Holdings Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>78467J100</cusip>
    <value>1662965</value>
    <shrsOrPrnAmt>
      <sshPrnamt>24611</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>24611</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Steris PLC</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>G8473T100</cusip>
    <value>16523468</value>
    <shrsOrPrnAmt>
      <sshPrnamt>74723</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>54167</Sole>
      <Shared>0</Shared>
      <None>20556</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Steris PLC</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>G8473T100</cusip>
    <value>7590951</value>
    <shrsOrPrnAmt>
      <sshPrnamt>34328</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>34328</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Texas Roadhouse Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>882681109</cusip>
    <value>92567210</value>
    <shrsOrPrnAmt>
      <sshPrnamt>560538</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>540356</Sole>
      <Shared>0</Shared>
      <None>20182</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Texas Roadhouse Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>882681109</cusip>
    <value>39003591</value>
    <shrsOrPrnAmt>
      <sshPrnamt>236185</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>236185</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Cooper Companies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>216648501</cusip>
    <value>4574588</value>
    <shrsOrPrnAmt>
      <sshPrnamt>63980</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>45433</Sole>
      <Shared>0</Shared>
      <None>18547</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Cooper Companies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>216648501</cusip>
    <value>2211924</value>
    <shrsOrPrnAmt>
      <sshPrnamt>30936</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>30936</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The TJX Companies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>872540109</cusip>
    <value>2708831</value>
    <shrsOrPrnAmt>
      <sshPrnamt>16962</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>14558</Sole>
      <Shared>0</Shared>
      <None>2404</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Thermo Fisher Scientific Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>883556102</cusip>
    <value>2037883</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4146</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3563</Sole>
      <Shared>0</Shared>
      <None>583</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Trex Company, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>89531P105</cusip>
    <value>19237658</value>
    <shrsOrPrnAmt>
      <sshPrnamt>528217</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>509300</Sole>
      <Shared>0</Shared>
      <None>18917</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Trex Company, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>89531P105</cusip>
    <value>8064881</value>
    <shrsOrPrnAmt>
      <sshPrnamt>221441</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>221441</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Trimble Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>896239100</cusip>
    <value>2011498</value>
    <shrsOrPrnAmt>
      <sshPrnamt>30837</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>30837</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Trimble Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>896239100</cusip>
    <value>4173406</value>
    <shrsOrPrnAmt>
      <sshPrnamt>63980</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>45474</Sole>
      <Shared>0</Shared>
      <None>18506</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Tyler Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>902252105</cusip>
    <value>2638723</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7707</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>7707</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Tyler Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>902252105</cusip>
    <value>21514474</value>
    <shrsOrPrnAmt>
      <sshPrnamt>62838</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>62838</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Tyler Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>902252105</cusip>
    <value>60673416</value>
    <shrsOrPrnAmt>
      <sshPrnamt>177211</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>161469</Sole>
      <Shared>0</Shared>
      <None>15742</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UFP Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>902673102</cusip>
    <value>17874940</value>
    <shrsOrPrnAmt>
      <sshPrnamt>92329</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>89011</Sole>
      <Shared>0</Shared>
      <None>3318</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UFP Technologies Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>902673102</cusip>
    <value>7520198</value>
    <shrsOrPrnAmt>
      <sshPrnamt>38844</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>38844</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UL Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>903731107</cusip>
    <value>11910550</value>
    <shrsOrPrnAmt>
      <sshPrnamt>138963</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>116088</Sole>
      <Shared>0</Shared>
      <None>22875</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UL Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>903731107</cusip>
    <value>3271294</value>
    <shrsOrPrnAmt>
      <sshPrnamt>38167</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>38167</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UL Solutions Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>903731107</cusip>
    <value>1288821</value>
    <shrsOrPrnAmt>
      <sshPrnamt>15037</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>15037</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ulta Beauty Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>90384S303</cusip>
    <value>7870913</value>
    <shrsOrPrnAmt>
      <sshPrnamt>15058</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>11018</Sole>
      <Shared>0</Shared>
      <None>4040</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ulta Beauty Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>90384S303</cusip>
    <value>3255961</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6229</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>6229</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Valvoline Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92047W101</cusip>
    <value>42286216</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1255529</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1209891</Sole>
      <Shared>0</Shared>
      <None>45638</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Valvoline Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92047W101</cusip>
    <value>17991182</value>
    <shrsOrPrnAmt>
      <sshPrnamt>534180</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>534180</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vanguard Index Funds</nameOfIssuer>
    <titleOfClass>ETF</titleOfClass>
    <cusip>922908595</cusip>
    <value>3430722</value>
    <shrsOrPrnAmt>
      <sshPrnamt>11351</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>11351</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Veeva Systems Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>922475108</cusip>
    <value>3991264</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22722</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>16859</Sole>
      <Shared>0</Shared>
      <None>5863</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Veeva Systems Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>922475108</cusip>
    <value>1717428</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9777</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>9777</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Veralto Corp.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92338C103</cusip>
    <value>815763</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9226</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>7931</Sole>
      <Shared>0</Shared>
      <None>1295</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vericel Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92346J108</cusip>
    <value>16035265</value>
    <shrsOrPrnAmt>
      <sshPrnamt>498454</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>498454</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vericel Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92346J108</cusip>
    <value>36942864</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1148364</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1105791</Sole>
      <Shared>0</Shared>
      <None>42573</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Verisk Analytics, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92345Y106</cusip>
    <value>14505602</value>
    <shrsOrPrnAmt>
      <sshPrnamt>76446</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>55337</Sole>
      <Shared>0</Shared>
      <None>21109</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Verisk Analytics, Inc.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92345Y106</cusip>
    <value>6329870</value>
    <shrsOrPrnAmt>
      <sshPrnamt>33359</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>33359</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vertex Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92538J106</cusip>
    <value>17473700</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1469613</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1412808</Sole>
      <Shared>0</Shared>
      <None>56805</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vertex Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92538J106</cusip>
    <value>7907777</value>
    <shrsOrPrnAmt>
      <sshPrnamt>665078</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>665078</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Visa Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>92826C839</cusip>
    <value>1822205</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6029</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>5166</Sole>
      <Shared>0</Shared>
      <None>863</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vulcan Materials Company</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>929160109</cusip>
    <value>10326593</value>
    <shrsOrPrnAmt>
      <sshPrnamt>37924</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>26837</Sole>
      <Shared>0</Shared>
      <None>11087</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vulcan Materials Company</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>929160109</cusip>
    <value>5026930</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18461</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>18461</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Walmart Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>931142103</cusip>
    <value>2425425</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19516</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>16728</Sole>
      <Shared>0</Shared>
      <None>2788</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Watsco Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>942622200</cusip>
    <value>15722240</value>
    <shrsOrPrnAmt>
      <sshPrnamt>43218</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>35731</Sole>
      <Shared>0</Shared>
      <None>7487</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Watsco Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>942622200</cusip>
    <value>4538644</value>
    <shrsOrPrnAmt>
      <sshPrnamt>12476</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>12476</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Watsco Inc</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>942622200</cusip>
    <value>1587943</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4365</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>DFND</investmentDiscretion>
    <otherManager>02</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>4365</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>WD-40 Co.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>929236107</cusip>
    <value>40698746</value>
    <shrsOrPrnAmt>
      <sshPrnamt>199562</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>192481</Sole>
      <Shared>0</Shared>
      <None>7081</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>WD-40 Co.</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>929236107</cusip>
    <value>16903975</value>
    <shrsOrPrnAmt>
      <sshPrnamt>82887</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>82887</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>WillScot Holdings Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>971378104</cusip>
    <value>7535973</value>
    <shrsOrPrnAmt>
      <sshPrnamt>434100</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>418336</Sole>
      <Shared>0</Shared>
      <None>15764</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>WillScot Holdings Corporation</nameOfIssuer>
    <titleOfClass>COMMON-STOCK</titleOfClass>
    <cusip>971378104</cusip>
    <value>3202694</value>
    <shrsOrPrnAmt>
      <sshPrnamt>184487</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>OTR</investmentDiscretion>
    <otherManager>01</otherManager>
    <votingAuthority>
      <Sole>184487</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
</informationTable>
