<?xml version="1.0" ?>
<proxyVoteTable xmlns="http://www.sec.gov/edgar/document/npxproxy/informationtable">
	<proxyTable>
		<issuerName>AZZ Inc.</issuerName>
		<cusip>002474104</cusip>
		<isin>US0024741045</isin>
		<meetingDate>7/8/2025</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>36454</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>36454</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>STERIS plc</issuerName>
		<cusip>G8473T100</cusip>
		<isin>IE00BFY8C754</isin>
		<meetingDate>7/31/2025</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>33007</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>33007</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>The J. M. Smucker Company</issuerName>
		<cusip>832696405</cusip>
		<isin>US8326964058</isin>
		<meetingDate>8/13/2025</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>103795</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>103795</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Casey's General Stores, Inc.</issuerName>
		<cusip>147528103</cusip>
		<isin>US1475281036</isin>
		<meetingDate>9/3/2025</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>11881</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>11881</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Casey's General Stores, Inc.</issuerName>
		<cusip>147528103</cusip>
		<isin>US1475281036</isin>
		<meetingDate>9/3/2025</meetingDate>
		<voteDescription>Approve Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>11881</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>11881</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>RPM International Inc.</issuerName>
		<cusip>749685103</cusip>
		<isin>US7496851038</isin>
		<meetingDate>10/2/2025</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>103718</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>103718</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>REV Group, Inc.</issuerName>
		<cusip>749527107</cusip>
		<isin>US7495271071</isin>
		<meetingDate>1/28/2026</meetingDate>
		<voteDescription>Advisory Vote on Golden Parachutes</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>70233</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>70233</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Mueller Water Products, Inc.</issuerName>
		<cusip>624758108</cusip>
		<isin>US6247581084</isin>
		<meetingDate>2/9/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>235043</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>235043</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>The Toro Company</issuerName>
		<cusip>891092108</cusip>
		<isin>US8910921084</isin>
		<meetingDate>3/17/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>118935</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>118935</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>The Toro Company</issuerName>
		<cusip>891092108</cusip>
		<isin>US8910921084</isin>
		<meetingDate>3/17/2026</meetingDate>
		<voteDescription>Approve Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>118935</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>118935</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Keysight Technologies, Inc.</issuerName>
		<cusip>49338L103</cusip>
		<isin>US49338L1035</isin>
		<meetingDate>3/19/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>29380</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>29380</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Sonoco Products Company</issuerName>
		<cusip>835495102</cusip>
		<isin>US8354951027</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>191459</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>191459</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Sonoco Products Company</issuerName>
		<cusip>835495102</cusip>
		<isin>US8354951027</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Amend Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>191459</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>191459</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Cass Information Systems, Inc.</issuerName>
		<cusip>14808P109</cusip>
		<isin>US14808P1093</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>214722</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>214722</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>M&amp;T Bank Corporation</issuerName>
		<cusip>55261F104</cusip>
		<isin>US55261F1049</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>39491</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>39491</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>M&amp;T Bank Corporation</issuerName>
		<cusip>55261F104</cusip>
		<isin>US55261F1049</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Amend Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>39491</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>39491</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Northern Trust Corporation</issuerName>
		<cusip>665859104</cusip>
		<isin>US6658591044</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>31962</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>31962</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Northern Trust Corporation</issuerName>
		<cusip>665859104</cusip>
		<isin>US6658591044</isin>
		<meetingDate>4/15/2026</meetingDate>
		<voteDescription>Approve Qualified Employee Stock Purchase Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>31962</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>31962</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Eaton Corporation plc</issuerName>
		<cusip>G29183103</cusip>
		<isin>IE00B8KQN827</isin>
		<meetingDate>4/22/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>118</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>118</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Winmark Corporation</issuerName>
		<cusip>974250102</cusip>
		<isin>US9742501029</isin>
		<meetingDate>4/22/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>39</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>39</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Commerce Bancshares, Inc.</issuerName>
		<cusip>200525103</cusip>
		<isin>US2005251036</isin>
		<meetingDate>4/24/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>207321</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>207321</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>AptarGroup, Inc.</issuerName>
		<cusip>038336103</cusip>
		<isin>US0383361039</isin>
		<meetingDate>5/6/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>54891</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>54891</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Brown &amp; Brown, Inc.</issuerName>
		<cusip>115236101</cusip>
		<isin>US1152361010</isin>
		<meetingDate>5/6/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>89491</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>89491</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Brown &amp; Brown, Inc.</issuerName>
		<cusip>115236101</cusip>
		<isin>US1152361010</isin>
		<meetingDate>5/6/2026</meetingDate>
		<voteDescription>Amend Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>89491</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>89491</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>IDEX Corporation</issuerName>
		<cusip>45167R104</cusip>
		<isin>US45167R1041</isin>
		<meetingDate>5/6/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>49720</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>49720</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>C.H. Robinson Worldwide, Inc.</issuerName>
		<cusip>12541W209</cusip>
		<isin>US12541W2098</isin>
		<meetingDate>5/7/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>24066</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>24066</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>C.H. Robinson Worldwide, Inc.</issuerName>
		<cusip>12541W209</cusip>
		<isin>US12541W2098</isin>
		<meetingDate>5/7/2026</meetingDate>
		<voteDescription>Amend Qualified Employee Stock Purchase Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>24066</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>24066</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>MSA Safety Incorporated</issuerName>
		<cusip>553498106</cusip>
		<isin>US5534981064</isin>
		<meetingDate>5/8/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>53250</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>53250</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Arrow Electronics, Inc.</issuerName>
		<cusip>042735100</cusip>
		<isin>US0427351004</isin>
		<meetingDate>5/12/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>62908</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>62908</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Westinghouse Air Brake Technologies Corporation</issuerName>
		<cusip>929740108</cusip>
		<isin>US9297401088</isin>
		<meetingDate>5/12/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>32920</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>32920</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Insight Enterprises, Inc.</issuerName>
		<cusip>45765U103</cusip>
		<isin>US45765U1034</isin>
		<meetingDate>5/13/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>52892</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>52892</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Hexcel Corporation</issuerName>
		<cusip>428291108</cusip>
		<isin>US4282911084</isin>
		<meetingDate>5/14/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>128103</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>128103</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Hexcel Corporation</issuerName>
		<cusip>428291108</cusip>
		<isin>US4282911084</isin>
		<meetingDate>5/14/2026</meetingDate>
		<voteDescription>Approve Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>128103</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>128103</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>O'Reilly Automotive, Inc.</issuerName>
		<cusip>67103H107</cusip>
		<isin>US67103H1077</isin>
		<meetingDate>5/14/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>78886</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>78886</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Tractor Supply Company</issuerName>
		<cusip>892356106</cusip>
		<isin>US8923561067</isin>
		<meetingDate>5/14/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>176914</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>176914</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Teleflex Incorporated</issuerName>
		<cusip>879369106</cusip>
		<isin>US8793691069</isin>
		<meetingDate>5/15/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>67399</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>67399</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>MGE Energy, Inc.</issuerName>
		<cusip>55277P104</cusip>
		<isin>US55277P1049</isin>
		<meetingDate>5/19/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>127462</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>127462</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Gentex Corporation</issuerName>
		<cusip>371901109</cusip>
		<isin>US3719011096</isin>
		<meetingDate>5/21/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>377493</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>377493</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Gentex Corporation</issuerName>
		<cusip>371901109</cusip>
		<isin>US3719011096</isin>
		<meetingDate>5/21/2026</meetingDate>
		<voteDescription>Approve Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>377493</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>377493</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Labcorp Holdings Inc.</issuerName>
		<cusip>504922105</cusip>
		<isin>US5049221055</isin>
		<meetingDate>5/21/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>27207</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>27207</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Mohawk Industries, Inc.</issuerName>
		<cusip>608190104</cusip>
		<isin>US6081901042</isin>
		<meetingDate>5/21/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>41433</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>41433</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Mohawk Industries, Inc.</issuerName>
		<cusip>608190104</cusip>
		<isin>US6081901042</isin>
		<meetingDate>5/21/2026</meetingDate>
		<voteDescription>Approve Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>41433</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>41433</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>White Mountains Insurance Group, Ltd.</issuerName>
		<cusip>G9618E107</cusip>
		<isin>BMG9618E1075</isin>
		<meetingDate>5/21/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>5915</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>5915</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Zimmer Biomet Holdings, Inc.</issuerName>
		<cusip>98956P102</cusip>
		<isin>US98956P1021</isin>
		<meetingDate>5/22/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>88358</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>88358</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Trimble Inc.</issuerName>
		<cusip>896239100</cusip>
		<isin>US8962391004</isin>
		<meetingDate>5/22/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>71306</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>71306</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Trimble Inc.</issuerName>
		<cusip>896239100</cusip>
		<isin>US8962391004</isin>
		<meetingDate>5/22/2026</meetingDate>
		<voteDescription>Amend Qualified Employee Stock Purchase Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>71306</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>71306</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>W. R. Berkley Corporation</issuerName>
		<cusip>084423102</cusip>
		<isin>US0844231029</isin>
		<meetingDate>6/3/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>83459</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>83459</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Terex Corporation</issuerName>
		<cusip>880779103</cusip>
		<isin>US8807791038</isin>
		<meetingDate>6/25/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>68676</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>68676</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Terex Corporation</issuerName>
		<cusip>880779103</cusip>
		<isin>US8807791038</isin>
		<meetingDate>6/25/2026</meetingDate>
		<voteDescription>Approve Omnibus Stock Plan</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>68676</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>68676</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
	<proxyTable>
		<issuerName>Devon Energy Corporation</issuerName>
		<cusip>25179M103</cusip>
		<isin>US25179M1036</isin>
		<meetingDate>6/30/2026</meetingDate>
		<voteDescription>Advisory Vote to Ratify Named Executive Officers' Compensation</voteDescription>
		<voteCategories>
			<voteCategory>
				<categoryType>SECTION 14A SAY-ON-PAY VOTES</categoryType>
			</voteCategory>
	 	</voteCategories>
		<voteSource>ISSUER</voteSource>
		<sharesVoted>191828</sharesVoted>
		<sharesOnLoan>0</sharesOnLoan>
		<vote>
			<voteRecord>
			<howVoted>FOR</howVoted>
			<sharesVoted>191828</sharesVoted>
			<managementRecommendation>FOR</managementRecommendation>
			</voteRecord>
		</vote>
	</proxyTable>
</proxyVoteTable>
