<?xml version="1.0" encoding="utf-8"?>
<informationTable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.sec.gov/edgar/document/thirteenf/informationtable">
  <infoTable>
    <nameOfIssuer>AAON, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>000360206</cusip>
    <value>3280193</value>
    <shrsOrPrnAmt>
      <sshPrnamt>39635</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>7113</Sole>
      <Shared>0</Shared>
      <None>32522</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>APi Group Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>00187Y100</cusip>
    <value>3104675</value>
    <shrsOrPrnAmt>
      <sshPrnamt>80432</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>14278</Sole>
      <Shared>0</Shared>
      <None>66154</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>AbbVie, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>00287Y109</cusip>
    <value>40653179</value>
    <shrsOrPrnAmt>
      <sshPrnamt>155408</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>74357</Sole>
      <Shared>0</Shared>
      <None>81051</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Advanced Energy Industries, In</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>007973100</cusip>
    <value>4085826</value>
    <shrsOrPrnAmt>
      <sshPrnamt>14498</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2603</Sole>
      <Shared>0</Shared>
      <None>11895</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Advanced Micro Devices, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>007903107</cusip>
    <value>2377911</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3887</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1251</Sole>
      <Shared>0</Shared>
      <None>2636</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Alignment Healthcare, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>01625V104</cusip>
    <value>923957</value>
    <shrsOrPrnAmt>
      <sshPrnamt>113230</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>20308</Sole>
      <Shared>0</Shared>
      <None>92922</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Alphabet, Inc. Class A</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>02079K305</cusip>
    <value>5538656</value>
    <shrsOrPrnAmt>
      <sshPrnamt>16097</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>7276</Sole>
      <Shared>0</Shared>
      <None>8821</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Alphabet, Inc. Class C</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>02079K107</cusip>
    <value>6776637</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19888</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>18688</Sole>
      <Shared>0</Shared>
      <None>1200</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Amazon.com, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>023135106</cusip>
    <value>7708950</value>
    <shrsOrPrnAmt>
      <sshPrnamt>30941</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>25312</Sole>
      <Shared>0</Shared>
      <None>5629</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>American Superconductor Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>030111207</cusip>
    <value>2025066</value>
    <shrsOrPrnAmt>
      <sshPrnamt>69566</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>12412</Sole>
      <Shared>0</Shared>
      <None>57154</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Amneal Pharmaceuticals, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>03168L105</cusip>
    <value>1858781</value>
    <shrsOrPrnAmt>
      <sshPrnamt>92293</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>16590</Sole>
      <Shared>0</Shared>
      <None>75703</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Amphenol Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>032095101</cusip>
    <value>52182627</value>
    <shrsOrPrnAmt>
      <sshPrnamt>619011</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>300336</Sole>
      <Shared>0</Shared>
      <None>318675</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Analog Devices, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>032654105</cusip>
    <value>46740372</value>
    <shrsOrPrnAmt>
      <sshPrnamt>117820</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>63105</Sole>
      <Shared>0</Shared>
      <None>54715</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Apple, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>037833100</cusip>
    <value>95448633</value>
    <shrsOrPrnAmt>
      <sshPrnamt>286615</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>141217</Sole>
      <Shared>0</Shared>
      <None>145398</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Boot Barn Holdings, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>099406100</cusip>
    <value>1652487</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13717</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2437</Sole>
      <Shared>0</Shared>
      <None>11280</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Broadcom, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>11135F101</cusip>
    <value>62356945</value>
    <shrsOrPrnAmt>
      <sshPrnamt>177559</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>95331</Sole>
      <Shared>0</Shared>
      <None>82228</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Century Communities, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>156504300</cusip>
    <value>1705798</value>
    <shrsOrPrnAmt>
      <sshPrnamt>28312</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>5026</Sole>
      <Shared>0</Shared>
      <None>23286</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Commvault Systems, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>204166102</cusip>
    <value>2487023</value>
    <shrsOrPrnAmt>
      <sshPrnamt>16589</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2981</Sole>
      <Shared>0</Shared>
      <None>13608</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Concentra Group Holdings Paren</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>20603L102</cusip>
    <value>1787396</value>
    <shrsOrPrnAmt>
      <sshPrnamt>51929</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>9334</Sole>
      <Shared>0</Shared>
      <None>42595</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ConocoPhillips</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>20825C104</cusip>
    <value>306743</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2451</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>691</Sole>
      <Shared>0</Shared>
      <None>1760</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Corcept Therapeutics, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>218352102</cusip>
    <value>2148118</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18642</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3316</Sole>
      <Shared>0</Shared>
      <None>15326</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Costco Wholesale Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>22160K105</cusip>
    <value>459722</value>
    <shrsOrPrnAmt>
      <sshPrnamt>505</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>505</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Curtiss-Wright Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>231561101</cusip>
    <value>3019832</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5553</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>996</Sole>
      <Shared>0</Shared>
      <None>4557</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Dycom Industries, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>267475101</cusip>
    <value>3621817</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13460</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2414</Sole>
      <Shared>0</Shared>
      <None>11046</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Eaton Corp. plc</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>G29183103</cusip>
    <value>49983008</value>
    <shrsOrPrnAmt>
      <sshPrnamt>116318</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>55814</Sole>
      <Shared>0</Shared>
      <None>60504</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Eli Lilly &amp; Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>532457108</cusip>
    <value>61745260</value>
    <shrsOrPrnAmt>
      <sshPrnamt>53363</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>28144</Sole>
      <Shared>0</Shared>
      <None>25219</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Emerson Electric Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>291011104</cusip>
    <value>37112638</value>
    <shrsOrPrnAmt>
      <sshPrnamt>239282</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>119415</Sole>
      <Shared>0</Shared>
      <None>119867</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ensign Group, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>29358P101</cusip>
    <value>3541308</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20589</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3657</Sole>
      <Shared>0</Shared>
      <None>16932</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Evercore, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>29977A105</cusip>
    <value>2784348</value>
    <shrsOrPrnAmt>
      <sshPrnamt>10813</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1921</Sole>
      <Shared>0</Shared>
      <None>8892</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ExlService Holdings, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>302081104</cusip>
    <value>4341747</value>
    <shrsOrPrnAmt>
      <sshPrnamt>126287</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>22680</Sole>
      <Shared>0</Shared>
      <None>103607</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ExxonMobil Holdings Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>30231G102</cusip>
    <value>835396</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5133</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>905</Sole>
      <Shared>0</Shared>
      <None>4228</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Fabrinet</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>G3323L100</cusip>
    <value>4063234</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9577</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1713</Sole>
      <Shared>0</Shared>
      <None>7864</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Fiserv, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>337738108</cusip>
    <value>472583</value>
    <shrsOrPrnAmt>
      <sshPrnamt>10460</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>5740</Sole>
      <Shared>0</Shared>
      <None>4720</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Halozyme Therapeutics, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>40637H109</cusip>
    <value>4303502</value>
    <shrsOrPrnAmt>
      <sshPrnamt>38981</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>6926</Sole>
      <Shared>0</Shared>
      <None>32055</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Honeywell Aerospace, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>43849R105</cusip>
    <value>250741</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1618</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1546</Sole>
      <Shared>0</Shared>
      <None>72</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Honeywell International, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>438516106</cusip>
    <value>341301</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1618</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1546</Sole>
      <Shared>0</Shared>
      <None>72</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Jacobs Solutions, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>46982L108</cusip>
    <value>864781</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6393</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>6035</Sole>
      <Shared>0</Shared>
      <None>358</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Johnson &amp; Johnson</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>478160104</cusip>
    <value>252827</value>
    <shrsOrPrnAmt>
      <sshPrnamt>955</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>455</Sole>
      <Shared>0</Shared>
      <None>500</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Johnson Controls Intl PLC</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>G51502105</cusip>
    <value>535140</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3600</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>3600</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>KLA Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>482480100</cusip>
    <value>67447339</value>
    <shrsOrPrnAmt>
      <sshPrnamt>346008</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>182783</Sole>
      <Shared>0</Shared>
      <None>163225</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Knife River Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>498894104</cusip>
    <value>950064</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18843</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3366</Sole>
      <Shared>0</Shared>
      <None>15477</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lantheus Holdings, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>516544103</cusip>
    <value>3780348</value>
    <shrsOrPrnAmt>
      <sshPrnamt>37982</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>6751</Sole>
      <Shared>0</Shared>
      <None>31231</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lennox International, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>526107107</cusip>
    <value>13285558</value>
    <shrsOrPrnAmt>
      <sshPrnamt>37422</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>18291</Sole>
      <Shared>0</Shared>
      <None>19131</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Limbach Holdings, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>53263P105</cusip>
    <value>1324731</value>
    <shrsOrPrnAmt>
      <sshPrnamt>27074</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4858</Sole>
      <Shared>0</Shared>
      <None>22216</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lithia Motors, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>536797103</cusip>
    <value>2688046</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9211</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1655</Sole>
      <Shared>0</Shared>
      <None>7556</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Lowe's Companies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>548661107</cusip>
    <value>25518083</value>
    <shrsOrPrnAmt>
      <sshPrnamt>138467</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>69700</Sole>
      <Shared>0</Shared>
      <None>68767</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MYR Group,Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>55405W104</cusip>
    <value>1928481</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6594</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1183</Sole>
      <Shared>0</Shared>
      <None>5411</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Magnolia Oil &amp; Gas Corp. Cl A</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>559663109</cusip>
    <value>2453437</value>
    <shrsOrPrnAmt>
      <sshPrnamt>104446</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>18551</Sole>
      <Shared>0</Shared>
      <None>85895</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Mastercard, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>57636Q104</cusip>
    <value>23920563</value>
    <shrsOrPrnAmt>
      <sshPrnamt>43376</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>21416</Sole>
      <Shared>0</Shared>
      <None>21960</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Medpace Holdings, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>58506Q109</cusip>
    <value>5866668</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9399</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1688</Sole>
      <Shared>0</Shared>
      <None>7711</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Meta Platforms, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>30303M102</cusip>
    <value>2054435</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2833</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>964</Sole>
      <Shared>0</Shared>
      <None>1869</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Microsoft Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>594918104</cusip>
    <value>73569350</value>
    <shrsOrPrnAmt>
      <sshPrnamt>143438</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>69813</Sole>
      <Shared>0</Shared>
      <None>73625</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Modine Manufacturing Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>607828100</cusip>
    <value>6620890</value>
    <shrsOrPrnAmt>
      <sshPrnamt>35368</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>7639</Sole>
      <Shared>0</Shared>
      <None>27729</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Moelis</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>60786M105</cusip>
    <value>1049050</value>
    <shrsOrPrnAmt>
      <sshPrnamt>18238</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3253</Sole>
      <Shared>0</Shared>
      <None>14985</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Moody's Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>615369105</cusip>
    <value>19930403</value>
    <shrsOrPrnAmt>
      <sshPrnamt>43887</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>21982</Sole>
      <Shared>0</Shared>
      <None>21905</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Motorola Solutions, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>620076307</cusip>
    <value>36061134</value>
    <shrsOrPrnAmt>
      <sshPrnamt>80860</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>39416</Sole>
      <Shared>0</Shared>
      <None>41444</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>NVIDIA Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>67066G104</cusip>
    <value>6056409</value>
    <shrsOrPrnAmt>
      <sshPrnamt>26519</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>8375</Sole>
      <Shared>0</Shared>
      <None>18144</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Nasdaq, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>631103108</cusip>
    <value>30333489</value>
    <shrsOrPrnAmt>
      <sshPrnamt>329676</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>159293</Sole>
      <Shared>0</Shared>
      <None>170383</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Netflix, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>64110L106</cusip>
    <value>551561</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7927</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2541</Sole>
      <Shared>0</Shared>
      <None>5386</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>O Reilly Automotive</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>67103H107</cusip>
    <value>684134</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8010</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>8010</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ollie's Bargain Outlet Holding</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>681116109</cusip>
    <value>1888754</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22052</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3923</Sole>
      <Shared>0</Shared>
      <None>18129</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Onto Innovation, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>683344105</cusip>
    <value>5929229</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19262</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3461</Sole>
      <Shared>0</Shared>
      <None>15801</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Oracle Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>68389x105</cusip>
    <value>1039361</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7570</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2991</Sole>
      <Shared>0</Shared>
      <None>4579</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>PepsiCo, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>713448108</cusip>
    <value>22576055</value>
    <shrsOrPrnAmt>
      <sshPrnamt>178157</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>86192</Sole>
      <Shared>0</Shared>
      <None>91965</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Plexus Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>729132100</cusip>
    <value>2771550</value>
    <shrsOrPrnAmt>
      <sshPrnamt>10621</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1929</Sole>
      <Shared>0</Shared>
      <None>8692</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Primo Brands Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>741623102</cusip>
    <value>2234565</value>
    <shrsOrPrnAmt>
      <sshPrnamt>117300</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>21086</Sole>
      <Shared>0</Shared>
      <None>96214</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>RTX Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>75513E101</cusip>
    <value>39021925</value>
    <shrsOrPrnAmt>
      <sshPrnamt>210191</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>107086</Sole>
      <Shared>0</Shared>
      <None>103105</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>RadNet, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>750491102</cusip>
    <value>1917842</value>
    <shrsOrPrnAmt>
      <sshPrnamt>27819</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>5106</Sole>
      <Shared>0</Shared>
      <None>22713</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Rambus, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>750917106</cusip>
    <value>4736621</value>
    <shrsOrPrnAmt>
      <sshPrnamt>44367</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>7901</Sole>
      <Shared>0</Shared>
      <None>36466</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Ryman Hospitality Properties,</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>78377T107</cusip>
    <value>2461959</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20597</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3699</Sole>
      <Shared>0</Shared>
      <None>16898</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Semtech Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>816850101</cusip>
    <value>4066380</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22800</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4154</Sole>
      <Shared>0</Shared>
      <None>18646</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Sezzle, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>78435P105</cusip>
    <value>1606555</value>
    <shrsOrPrnAmt>
      <sshPrnamt>14870</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2669</Sole>
      <Shared>0</Shared>
      <None>12201</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Skyward Specialty Insurance Gr</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>830940102</cusip>
    <value>2498443</value>
    <shrsOrPrnAmt>
      <sshPrnamt>47319</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>8487</Sole>
      <Shared>0</Shared>
      <None>38832</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Sprouts Farmers Market, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>85208M102</cusip>
    <value>2440353</value>
    <shrsOrPrnAmt>
      <sshPrnamt>36780</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>6621</Sole>
      <Shared>0</Shared>
      <None>30159</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Starbucks Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>855244109</cusip>
    <value>33254417</value>
    <shrsOrPrnAmt>
      <sshPrnamt>353921</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>172653</Sole>
      <Shared>0</Shared>
      <None>181268</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>State Street Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>857477103</cusip>
    <value>51897576</value>
    <shrsOrPrnAmt>
      <sshPrnamt>297254</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>144680</Sole>
      <Shared>0</Shared>
      <None>152574</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Stryker Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>863667101</cusip>
    <value>16471627</value>
    <shrsOrPrnAmt>
      <sshPrnamt>59812</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>30326</Sole>
      <Shared>0</Shared>
      <None>29486</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Supernus Pharmaceuticals, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>868459108</cusip>
    <value>2080252</value>
    <shrsOrPrnAmt>
      <sshPrnamt>48333</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>8589</Sole>
      <Shared>0</Shared>
      <None>39744</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>T-Mobile US, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>872590104</cusip>
    <value>1440486</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8833</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4680</Sole>
      <Shared>0</Shared>
      <None>4153</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>TE Connectivity plc</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>G87052109</cusip>
    <value>521368</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2470</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2250</Sole>
      <Shared>0</Shared>
      <None>220</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Texas Instruments, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>882508104</cusip>
    <value>46274509</value>
    <shrsOrPrnAmt>
      <sshPrnamt>165213</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>81905</Sole>
      <Shared>0</Shared>
      <None>83308</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Boeing Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>097023105</cusip>
    <value>408752</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2197</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>730</Sole>
      <Shared>0</Shared>
      <None>1467</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Home Depot, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>437076102</cusip>
    <value>1168969</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4109</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4109</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The TJX Companies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>872540109</cusip>
    <value>1284862</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9711</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>3324</Sole>
      <Shared>0</Shared>
      <None>6387</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Travelers Companies Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>89417E109</cusip>
    <value>213906</value>
    <shrsOrPrnAmt>
      <sshPrnamt>600</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>600</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Walt Disney Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>254687106</cusip>
    <value>436489</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4161</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>4161</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>The Williams Companies, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>969457100</cusip>
    <value>44712297</value>
    <shrsOrPrnAmt>
      <sshPrnamt>657824</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>319841</Sole>
      <Shared>0</Shared>
      <None>337983</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Thermo Fisher Scientific, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>883556102</cusip>
    <value>22103837</value>
    <shrsOrPrnAmt>
      <sshPrnamt>32744</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>14882</Sole>
      <Shared>0</Shared>
      <None>17862</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Trane Technologies plc</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>G8994E103</cusip>
    <value>990740</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2192</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>771</Sole>
      <Shared>0</Shared>
      <None>1421</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>TransMedics Group, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>89377M109</cusip>
    <value>1102959</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13217</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2349</Sole>
      <Shared>0</Shared>
      <None>10868</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UnitedHealth Group, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>91324P102</cusip>
    <value>40900421</value>
    <shrsOrPrnAmt>
      <sshPrnamt>111421</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>54680</Sole>
      <Shared>0</Shared>
      <None>56741</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VSE Corp.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>918284100</cusip>
    <value>2146700</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13034</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>2393</Sole>
      <Shared>0</Shared>
      <None>10641</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vertex Pharmaceuticals, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>92532f100</cusip>
    <value>829699</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1587</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>510</Sole>
      <Shared>0</Shared>
      <None>1077</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Visa, Inc. Class A</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>92826C839</cusip>
    <value>27663739</value>
    <shrsOrPrnAmt>
      <sshPrnamt>76987</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>40924</Sole>
      <Shared>0</Shared>
      <None>36063</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Vulcan Materials Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>929160109</cusip>
    <value>15290598</value>
    <shrsOrPrnAmt>
      <sshPrnamt>62505</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>30505</Sole>
      <Shared>0</Shared>
      <None>32000</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>WEC Energy Group, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>92939U106</cusip>
    <value>37952337</value>
    <shrsOrPrnAmt>
      <sshPrnamt>376586</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>191349</Sole>
      <Shared>0</Shared>
      <None>185237</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>Wells Fargo &amp; Co.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>949746101</cusip>
    <value>27503259</value>
    <shrsOrPrnAmt>
      <sshPrnamt>343576</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>175714</Sole>
      <Shared>0</Shared>
      <None>167862</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ePlus, Inc.</nameOfIssuer>
    <titleOfClass>COMMON STOCKS</titleOfClass>
    <cusip>294268107</cusip>
    <value>3255572</value>
    <shrsOrPrnAmt>
      <sshPrnamt>36169</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>6430</Sole>
      <Shared>0</Shared>
      <None>29739</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SPDR Tr Unit Ser 1</nameOfIssuer>
    <titleOfClass>EXCHANGE-TRADED</titleOfClass>
    <cusip>78462F103</cusip>
    <value>1471113</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1929</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <votingAuthority>
      <Sole>1604</Sole>
      <Shared>0</Shared>
      <None>325</None>
    </votingAuthority>
  </infoTable>
</informationTable>
